Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 
 

246 Zeilen
5.7 KiB

  1. BASE_URL="http://localhost:1902"
  2. echo "=========================================="
  3. echo "GATEWAY API TESTS"
  4. echo "=========================================="
  5. echo "1. Listing all Gateways"
  6. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getGateways" | jq -c '.[]')
  7. GATEWAY_IDS=()
  8. IFS=$'\n'
  9. for r in $LIST
  10. do
  11. echo "$r"
  12. GATEWAY_IDS+=($(echo "$r" | jq -r '.id'))
  13. done
  14. sleep 1
  15. if [ ${#GATEWAY_IDS[@]} -gt 1 ]; then
  16. echo -e "\n\n2. Updating Gateway ${GATEWAY_IDS[1]}"
  17. curl -X PUT "$BASE_URL/reslevis/updateGateway/${GATEWAY_IDS[1]}" \
  18. -H "Content-Type: application/json" \
  19. -d "{
  20. \"id\": \"${GATEWAY_IDS[1]}\",
  21. \"name\": \"GU-100-Updated\",
  22. \"mac\": \"AA:BB:CC:DD:EE:FF\",
  23. \"status\": \"online\",
  24. \"model\": \"MG3\",
  25. \"ip\": \"127.0.0.1\",
  26. \"position\": \"unknown\",
  27. \"x\": 1,
  28. \"y\": 1,
  29. \"notes\": \"some description\",
  30. \"floor\": \"second\",
  31. \"building\": \"hospital\"
  32. }"
  33. sleep 1
  34. echo -e "\n\n3. Listing Gateways after update"
  35. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getGateways" | jq -c '.[]')
  36. IFS=$'\n'
  37. for r in $LIST
  38. do
  39. echo "$r"
  40. done
  41. sleep 1
  42. echo -e "\n\n4. Deleting Gateway ${GATEWAY_IDS[1]}"
  43. curl -X DELETE "$BASE_URL/reslevis/removeGateway/${GATEWAY_IDS[1]}"
  44. sleep 1
  45. echo -e "\n\n5. Verifying Delete (List again)..."
  46. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getGateways" | jq -c '.[]')
  47. IFS=$'\n'
  48. for r in $LIST
  49. do
  50. echo "$r"
  51. done
  52. else
  53. echo "Not enough gateways to test update/delete"
  54. fi
  55. echo -e "\n\n=========================================="
  56. echo "ZONE API TESTS"
  57. echo "=========================================="
  58. echo "6. Listing all Zones"
  59. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getZones" | jq -c '.[]')
  60. ZONE_IDS=()
  61. IFS=$'\n'
  62. for r in $LIST
  63. do
  64. echo "$r"
  65. ZONE_IDS+=($(echo "$r" | jq -r '.id'))
  66. done
  67. sleep 1
  68. if [ ${#ZONE_IDS[@]} -gt 0 ]; then
  69. echo -e "\n\n7. Updating Zone ${ZONE_IDS[0]}"
  70. curl -X PUT "$BASE_URL/reslevis/updateZone" \
  71. -H "Content-Type: application/json" \
  72. -d "{
  73. \"id\": \"${ZONE_IDS[0]}\",
  74. \"name\": \"Zone-Updated\",
  75. \"groups\": [\"security\", \"logistics\"]
  76. }"
  77. sleep 1
  78. echo -e "\n\n8. Listing Zones after update"
  79. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getZones" | jq -c '.[]')
  80. IFS=$'\n'
  81. for r in $LIST
  82. do
  83. echo "$r"
  84. done
  85. sleep 1
  86. echo -e "\n\n9. Deleting Zone ${ZONE_IDS[0]}"
  87. curl -X DELETE "$BASE_URL/reslevis/removeZone/${ZONE_IDS[0]}"
  88. sleep 1
  89. echo -e "\n\n10. Verifying Delete (List again)..."
  90. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getZones" | jq -c '.[]')
  91. IFS=$'\n'
  92. for r in $LIST
  93. do
  94. echo "$r"
  95. done
  96. else
  97. echo "No zones to test update/delete"
  98. fi
  99. echo -e "\n\n=========================================="
  100. echo "TRACKERZONE API TESTS"
  101. echo "=========================================="
  102. echo "11. Listing all TrackerZones"
  103. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getTrackerZones" | jq -c '.[]')
  104. TRACKERZONE_IDS=()
  105. IFS=$'\n'
  106. for r in $LIST
  107. do
  108. echo "$r"
  109. TRACKERZONE_IDS+=($(echo "$r" | jq -r '.id'))
  110. done
  111. sleep 1
  112. if [ ${#TRACKERZONE_IDS[@]} -gt 0 ]; then
  113. echo -e "\n\n12. Updating TrackerZone ${TRACKERZONE_IDS[0]}"
  114. curl -X PUT "$BASE_URL/reslevis/updateTrackerZone" \
  115. -H "Content-Type: application/json" \
  116. -d "{
  117. \"id\": \"${TRACKERZONE_IDS[0]}\",
  118. \"name\": \"TrackerZone-Updated\"
  119. }"
  120. sleep 1
  121. echo -e "\n\n13. Listing TrackerZones after update"
  122. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getTrackerZones" | jq -c '.[]')
  123. IFS=$'\n'
  124. for r in $LIST
  125. do
  126. echo "$r"
  127. done
  128. sleep 1
  129. echo -e "\n\n14. Deleting TrackerZone ${TRACKERZONE_IDS[0]}"
  130. curl -X DELETE "$BASE_URL/reslevis/removeTrackerZone/${TRACKERZONE_IDS[0]}"
  131. sleep 1
  132. echo -e "\n\n15. Verifying Delete (List again)..."
  133. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getTrackerZones" | jq -c '.[]')
  134. IFS=$'\n'
  135. for r in $LIST
  136. do
  137. echo "$r"
  138. done
  139. else
  140. echo "No trackerzones to test update/delete"
  141. fi
  142. echo -e "\n\n=========================================="
  143. echo "TRACKER API TESTS"
  144. echo "=========================================="
  145. echo "16. Listing all Trackers"
  146. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getTrackers" | jq -c '.[]')
  147. TRACKER_IDS=()
  148. IFS=$'\n'
  149. for r in $LIST
  150. do
  151. echo "$r"
  152. TRACKER_IDS+=($(echo "$r" | jq -r '.id'))
  153. done
  154. sleep 1
  155. if [ ${#TRACKER_IDS[@]} -gt 0 ]; then
  156. echo -e "\n\n17. Updating Tracker ${TRACKER_IDS[0]}"
  157. curl -X PUT "$BASE_URL/reslevis/updateTracker" \
  158. -H "Content-Type: application/json" \
  159. -d "{
  160. \"id\": \"${TRACKER_IDS[0]}\",
  161. \"name\": \"Tracker-Updated\",
  162. \"battery\": 85,
  163. \"status\": \"inactive\"
  164. }"
  165. sleep 1
  166. echo -e "\n\n18. Listing Trackers after update"
  167. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getTrackers" | jq -c '.[]')
  168. IFS=$'\n'
  169. for r in $LIST
  170. do
  171. echo "$r"
  172. done
  173. sleep 1
  174. echo -e "\n\n19. Deleting Tracker ${TRACKER_IDS[0]}"
  175. curl -X DELETE "$BASE_URL/reslevis/removeTracker/${TRACKER_IDS[0]}"
  176. sleep 1
  177. echo -e "\n\n20. Verifying Delete (List again)..."
  178. LIST=$(curl -s -X GET "$BASE_URL/reslevis/getTrackers" | jq -c '.[]')
  179. IFS=$'\n'
  180. for r in $LIST
  181. do
  182. echo "$r"
  183. done
  184. else
  185. echo "No trackers to test update/delete"
  186. fi
  187. echo -e "\n\n=========================================="
  188. echo "ALL TESTS COMPLETED"
  189. echo "=========================================="