wiliot-certificate 4.4.2__py3-none-any.whl → 4.5.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. {brg_certificate → certificate}/ag/wlt_cmd_if.html +10 -4
  2. {brg_certificate → certificate}/ag/wlt_types_ag.py +1878 -519
  3. certificate/cert_common.py +1488 -0
  4. certificate/cert_config.py +480 -0
  5. {brg_certificate → certificate}/cert_data_sim.py +134 -46
  6. {brg_certificate → certificate}/cert_defines.py +129 -128
  7. {brg_certificate → certificate}/cert_gw_sim.py +183 -53
  8. {brg_certificate → certificate}/cert_mqtt.py +179 -64
  9. {brg_certificate → certificate}/cert_prints.py +35 -33
  10. {brg_certificate → certificate}/cert_protobuf.py +15 -6
  11. {brg_certificate → certificate}/cert_results.py +240 -64
  12. certificate/cert_utils.py +634 -0
  13. certificate/certificate.py +205 -0
  14. certificate/certificate_cli.py +76 -0
  15. certificate/certificate_eth_test_list.txt +76 -0
  16. certificate/certificate_sanity_test_list.txt +66 -0
  17. certificate/certificate_test_list.txt +76 -0
  18. {brg_certificate → certificate}/tests/calibration/interval_test/interval_test.json +3 -2
  19. {brg_certificate → certificate}/tests/calibration/interval_test/interval_test.py +7 -6
  20. certificate/tests/calibration/output_power_test/output_power_test.json +23 -0
  21. certificate/tests/calibration/output_power_test/output_power_test.py +39 -0
  22. {brg_certificate → certificate}/tests/calibration/pattern_test/pattern_test.json +2 -1
  23. {brg_certificate → certificate}/tests/calibration/pattern_test/pattern_test.py +20 -15
  24. certificate/tests/cloud_connectivity/acl_ext_adv_test/acl_ext_adv_test.json +15 -0
  25. certificate/tests/cloud_connectivity/acl_ext_adv_test/acl_ext_adv_test.py +140 -0
  26. certificate/tests/cloud_connectivity/acl_test/acl_test.json +15 -0
  27. certificate/tests/cloud_connectivity/acl_test/acl_test.py +96 -0
  28. certificate/tests/cloud_connectivity/brg_ota_test/brg_ota_test.json +19 -0
  29. certificate/tests/cloud_connectivity/brg_ota_test/brg_ota_test.py +41 -0
  30. certificate/tests/cloud_connectivity/channel_scan_behaviour_test/channel_scan_behaviour_test.json +19 -0
  31. certificate/tests/cloud_connectivity/channel_scan_behaviour_test/channel_scan_behaviour_test.py +215 -0
  32. certificate/tests/cloud_connectivity/connection_test/connection_test.json +18 -0
  33. certificate/tests/cloud_connectivity/connection_test/connection_test.py +67 -0
  34. certificate/tests/cloud_connectivity/deduplication_test/deduplication_test.json +15 -0
  35. certificate/tests/cloud_connectivity/deduplication_test/deduplication_test.py +80 -0
  36. certificate/tests/cloud_connectivity/downlink_test/downlink_test.json +21 -0
  37. certificate/tests/cloud_connectivity/downlink_test/downlink_test.py +201 -0
  38. certificate/tests/cloud_connectivity/ext_adv_stress_test/ext_adv_stress_test.json +17 -0
  39. certificate/tests/cloud_connectivity/ext_adv_stress_test/ext_adv_stress_test.py +104 -0
  40. certificate/tests/cloud_connectivity/reboot_test/reboot_test.json +18 -0
  41. certificate/tests/cloud_connectivity/reboot_test/reboot_test.py +59 -0
  42. certificate/tests/cloud_connectivity/registration_test/registration_test.json +20 -0
  43. certificate/tests/cloud_connectivity/registration_test/registration_test.py +384 -0
  44. certificate/tests/cloud_connectivity/registration_test/registration_test_cli.py +90 -0
  45. certificate/tests/cloud_connectivity/stress_test/stress_test.json +17 -0
  46. certificate/tests/cloud_connectivity/stress_test/stress_test.py +101 -0
  47. certificate/tests/cloud_connectivity/uplink_ext_adv_test/uplink_ext_adv_test.json +25 -0
  48. certificate/tests/cloud_connectivity/uplink_ext_adv_test/uplink_ext_adv_test.py +92 -0
  49. certificate/tests/cloud_connectivity/uplink_test/uplink_test.json +20 -0
  50. certificate/tests/cloud_connectivity/uplink_test/uplink_test.py +169 -0
  51. {brg_certificate → certificate}/tests/datapath/aging_test/aging_test.json +2 -1
  52. certificate/tests/datapath/aging_test/aging_test.py +142 -0
  53. certificate/tests/datapath/event_ble5_test/event_ble5_test.json +17 -0
  54. certificate/tests/datapath/event_ble5_test/event_ble5_test.py +89 -0
  55. certificate/tests/datapath/event_test/event_test.json +17 -0
  56. certificate/tests/datapath/event_test/event_test.py +80 -0
  57. {brg_certificate → certificate}/tests/datapath/num_of_tags_test/num_of_tags_test.json +4 -3
  58. {brg_certificate → certificate}/tests/datapath/num_of_tags_test/num_of_tags_test.py +19 -13
  59. certificate/tests/datapath/output_power_test/output_power_test.json +23 -0
  60. {brg_certificate → certificate}/tests/datapath/output_power_test/output_power_test.py +17 -6
  61. {brg_certificate → certificate}/tests/datapath/pacer_interval_ble5_test/pacer_interval_ble5_test.json +2 -1
  62. {brg_certificate → certificate}/tests/datapath/pacer_interval_ble5_test/pacer_interval_ble5_test.py +13 -11
  63. {brg_certificate → certificate}/tests/datapath/pacer_interval_test/pacer_interval_test.json +2 -1
  64. {brg_certificate → certificate}/tests/datapath/pacer_interval_test/pacer_interval_test.py +9 -7
  65. {brg_certificate → certificate}/tests/datapath/pattern_test/pattern_test.json +3 -2
  66. {brg_certificate → certificate}/tests/datapath/pattern_test/pattern_test.py +18 -6
  67. certificate/tests/datapath/pkt_filter_ble5_chl21_test/pkt_filter_ble5_chl21_test.json +20 -0
  68. certificate/tests/datapath/pkt_filter_ble5_chl21_test/pkt_filter_ble5_chl21_test.py +61 -0
  69. {brg_certificate → certificate}/tests/datapath/pkt_filter_ble5_test/pkt_filter_ble5_test.json +2 -1
  70. {brg_certificate → certificate}/tests/datapath/pkt_filter_ble5_test/pkt_filter_ble5_test.py +15 -14
  71. certificate/tests/datapath/pkt_filter_brg2gw_ext_adv_test/pkt_filter_brg2gw_ext_adv_test.json +19 -0
  72. certificate/tests/datapath/pkt_filter_brg2gw_ext_adv_test/pkt_filter_brg2gw_ext_adv_test.py +85 -0
  73. {brg_certificate → certificate}/tests/datapath/pkt_filter_gen3_test/pkt_filter_gen3_test.json +2 -1
  74. {brg_certificate → certificate}/tests/datapath/pkt_filter_gen3_test/pkt_filter_gen3_test.py +10 -9
  75. {brg_certificate → certificate}/tests/datapath/pkt_filter_test/pkt_filter_test.json +2 -1
  76. {brg_certificate → certificate}/tests/datapath/pkt_filter_test/pkt_filter_test.py +10 -9
  77. {brg_certificate → certificate}/tests/datapath/rssi_threshold_test/rssi_threshold_test.json +3 -2
  78. {brg_certificate → certificate}/tests/datapath/rssi_threshold_test/rssi_threshold_test.py +9 -8
  79. brg_certificate/tests/datapath/output_power_test/output_power_test.json → certificate/tests/datapath/rx_channel_hopping_test/rx_channel_hopping_test.json +6 -4
  80. certificate/tests/datapath/rx_channel_hopping_test/rx_channel_hopping_test.py +77 -0
  81. {brg_certificate → certificate}/tests/datapath/rx_channel_test/rx_channel_test.json +3 -2
  82. {brg_certificate → certificate}/tests/datapath/rx_channel_test/rx_channel_test.py +7 -6
  83. {brg_certificate → certificate}/tests/datapath/rx_rate_gen2_test/rx_rate_gen2_test.json +8 -7
  84. {brg_certificate → certificate}/tests/datapath/rx_rate_gen2_test/rx_rate_gen2_test.py +113 -73
  85. {brg_certificate → certificate}/tests/datapath/rx_rate_gen3_test/rx_rate_gen3_test.json +8 -7
  86. {brg_certificate → certificate}/tests/datapath/rx_rate_gen3_test/rx_rate_gen3_test.py +112 -72
  87. {brg_certificate → certificate}/tests/datapath/stress_gen3_test/stress_gen3_test.json +4 -3
  88. {brg_certificate → certificate}/tests/datapath/stress_gen3_test/stress_gen3_test.py +15 -11
  89. {brg_certificate → certificate}/tests/datapath/stress_test/stress_test.json +4 -3
  90. {brg_certificate → certificate}/tests/datapath/stress_test/stress_test.py +15 -11
  91. {brg_certificate → certificate}/tests/datapath/tx_repetition_test/tx_repetition_test.json +3 -1
  92. {brg_certificate → certificate}/tests/datapath/tx_repetition_test/tx_repetition_test.py +14 -13
  93. certificate/tests/edge_mgmt/action_blink_test/action_blink_test.json +15 -0
  94. certificate/tests/edge_mgmt/action_blink_test/action_blink_test.py +24 -0
  95. certificate/tests/edge_mgmt/action_get_battery_sensor_test/action_get_battery_sensor_test.json +15 -0
  96. certificate/tests/edge_mgmt/action_get_battery_sensor_test/action_get_battery_sensor_test.py +43 -0
  97. certificate/tests/edge_mgmt/action_get_module_test/action_get_module_test.json +15 -0
  98. certificate/tests/edge_mgmt/action_get_module_test/action_get_module_test.py +42 -0
  99. certificate/tests/edge_mgmt/action_get_pof_data_test/action_get_pof_data_test.json +15 -0
  100. certificate/tests/edge_mgmt/action_get_pof_data_test/action_get_pof_data_test.py +44 -0
  101. certificate/tests/edge_mgmt/action_gw_hb_test/action_gw_hb_test.json +16 -0
  102. certificate/tests/edge_mgmt/action_gw_hb_test/action_gw_hb_test.py +42 -0
  103. certificate/tests/edge_mgmt/action_reboot_test/action_reboot_test.json +15 -0
  104. certificate/tests/edge_mgmt/action_reboot_test/action_reboot_test.py +49 -0
  105. certificate/tests/edge_mgmt/action_restore_defaults_test/action_restore_defaults_test.json +15 -0
  106. certificate/tests/edge_mgmt/action_restore_defaults_test/action_restore_defaults_test.py +102 -0
  107. certificate/tests/edge_mgmt/action_send_hb_test/action_send_hb_test.json +15 -0
  108. certificate/tests/edge_mgmt/action_send_hb_test/action_send_hb_test.py +45 -0
  109. {brg_certificate → certificate}/tests/edge_mgmt/periodic_msgs_test/periodic_msgs_test.json +3 -2
  110. {brg_certificate → certificate}/tests/edge_mgmt/periodic_msgs_test/periodic_msgs_test.py +22 -11
  111. {brg_certificate → certificate}/tests/energy2400/duty_cycle_test/duty_cycle_test.json +2 -1
  112. {brg_certificate → certificate}/tests/energy2400/duty_cycle_test/duty_cycle_test.py +7 -6
  113. certificate/tests/energy2400/output_power_test/output_power_test.json +23 -0
  114. {brg_certificate → certificate}/tests/energy2400/output_power_test/output_power_test.py +17 -6
  115. {brg_certificate → certificate}/tests/energy2400/pattern_test/pattern_test.json +2 -1
  116. {brg_certificate → certificate}/tests/energy2400/pattern_test/pattern_test.py +7 -6
  117. certificate/tests/energy2400/signal_indicator_ble5_test/signal_indicator_ble5_test.json +26 -0
  118. certificate/tests/energy2400/signal_indicator_ble5_test/signal_indicator_ble5_test.py +379 -0
  119. certificate/tests/energy2400/signal_indicator_ext_adv_test/signal_indicator_ext_adv_test.json +20 -0
  120. certificate/tests/energy2400/signal_indicator_ext_adv_test/signal_indicator_ext_adv_test.py +173 -0
  121. certificate/tests/energy2400/signal_indicator_test/signal_indicator_test.json +24 -0
  122. certificate/tests/energy2400/signal_indicator_test/signal_indicator_test.py +350 -0
  123. {brg_certificate → certificate}/tests/energy_sub1g/duty_cycle_test/duty_cycle_test.json +2 -1
  124. {brg_certificate → certificate}/tests/energy_sub1g/duty_cycle_test/duty_cycle_test.py +7 -6
  125. {brg_certificate → certificate}/tests/energy_sub1g/pattern_test/pattern_test.json +2 -1
  126. {brg_certificate → certificate}/tests/energy_sub1g/pattern_test/pattern_test.py +7 -6
  127. {brg_certificate → certificate}/tests/pwr_mgmt/pwr_mgmt_test/pwr_mgmt_test.json +2 -1
  128. {brg_certificate → certificate}/tests/pwr_mgmt/pwr_mgmt_test/pwr_mgmt_test.py +10 -10
  129. {brg_certificate → certificate}/tests/sensors/ext_sensor_test/ext_sensor_test.json +5 -4
  130. certificate/tests/sensors/ext_sensor_test/ext_sensor_test.py +450 -0
  131. certificate/wlt_types.py +122 -0
  132. {gw_certificate → common}/api_if/202/status.json +6 -0
  133. {gw_certificate → common}/api_if/203/status.json +6 -0
  134. {gw_certificate → common}/api_if/204/status.json +6 -0
  135. common/api_if/206/data.json +85 -0
  136. common/api_if/206/status.json +69 -0
  137. common/api_if/api_validation.py +91 -0
  138. common/web/templates/generator.html +210 -0
  139. common/web/templates/index.html +20 -0
  140. common/web/templates/menu.html +54 -0
  141. common/web/templates/parser.html +53 -0
  142. {brg_certificate/ag → common/web/templates}/wlt_types.html +1216 -191
  143. common/web/web_utils.py +399 -0
  144. {brg_certificate → common}/wltPb_pb2.py +14 -12
  145. {gw_certificate/common → common}/wltPb_pb2.pyi +16 -2
  146. gui_certificate/gui_certificate_cli.py +14 -0
  147. gui_certificate/server.py +1267 -0
  148. gui_certificate/templates/cert_run.html +1273 -0
  149. wiliot_certificate-4.5.0.dist-info/METADATA +99 -0
  150. wiliot_certificate-4.5.0.dist-info/RECORD +168 -0
  151. {wiliot_certificate-4.4.2.dist-info → wiliot_certificate-4.5.0.dist-info}/WHEEL +1 -1
  152. wiliot_certificate-4.5.0.dist-info/entry_points.txt +5 -0
  153. wiliot_certificate-4.5.0.dist-info/top_level.txt +3 -0
  154. brg_certificate/ag/energous_v0_defines.py +0 -925
  155. brg_certificate/ag/energous_v1_defines.py +0 -931
  156. brg_certificate/ag/energous_v2_defines.py +0 -925
  157. brg_certificate/ag/energous_v3_defines.py +0 -925
  158. brg_certificate/ag/energous_v4_defines.py +0 -925
  159. brg_certificate/ag/fanstel_lan_v0_defines.py +0 -925
  160. brg_certificate/ag/fanstel_lte_v0_defines.py +0 -925
  161. brg_certificate/ag/fanstel_wifi_v0_defines.py +0 -925
  162. brg_certificate/ag/minew_lte_v0_defines.py +0 -925
  163. brg_certificate/ag/wlt_types_ag_jsons/brg2brg_ota.json +0 -142
  164. brg_certificate/ag/wlt_types_ag_jsons/brg2gw_hb.json +0 -785
  165. brg_certificate/ag/wlt_types_ag_jsons/brg2gw_hb_sleep.json +0 -139
  166. brg_certificate/ag/wlt_types_ag_jsons/calibration.json +0 -394
  167. brg_certificate/ag/wlt_types_ag_jsons/custom.json +0 -515
  168. brg_certificate/ag/wlt_types_ag_jsons/datapath.json +0 -672
  169. brg_certificate/ag/wlt_types_ag_jsons/energy2400.json +0 -550
  170. brg_certificate/ag/wlt_types_ag_jsons/energySub1g.json +0 -595
  171. brg_certificate/ag/wlt_types_ag_jsons/externalSensor.json +0 -598
  172. brg_certificate/ag/wlt_types_ag_jsons/interface.json +0 -938
  173. brg_certificate/ag/wlt_types_ag_jsons/powerManagement.json +0 -1234
  174. brg_certificate/ag/wlt_types_ag_jsons/side_info_sensor.json +0 -105
  175. brg_certificate/ag/wlt_types_ag_jsons/signal_indicator_data.json +0 -77
  176. brg_certificate/ag/wlt_types_ag_jsons/unified_echo_ext_pkt.json +0 -61
  177. brg_certificate/ag/wlt_types_ag_jsons/unified_echo_pkt.json +0 -110
  178. brg_certificate/brg_certificate.py +0 -225
  179. brg_certificate/brg_certificate_cli.py +0 -63
  180. brg_certificate/cert_common.py +0 -923
  181. brg_certificate/cert_config.py +0 -402
  182. brg_certificate/cert_utils.py +0 -362
  183. brg_certificate/certificate_bcc_sanity_test_list.txt +0 -40
  184. brg_certificate/certificate_bcc_test_list.txt +0 -48
  185. brg_certificate/certificate_sanity_test_list.txt +0 -43
  186. brg_certificate/certificate_test_list.txt +0 -53
  187. brg_certificate/config/eclipse.json +0 -10
  188. brg_certificate/config/hivemq.json +0 -10
  189. brg_certificate/config/mosquitto.json +0 -10
  190. brg_certificate/config/mosquitto.md +0 -95
  191. brg_certificate/config/wiliot-dev.json +0 -10
  192. brg_certificate/restore_brg.py +0 -61
  193. brg_certificate/tests/calibration/output_power_test/output_power_test.json +0 -16
  194. brg_certificate/tests/calibration/output_power_test/output_power_test.py +0 -28
  195. brg_certificate/tests/datapath/aging_test/aging_test.py +0 -143
  196. brg_certificate/tests/datapath/pacer_interval_tags_count_test/pacer_interval_tags_count_test.json +0 -16
  197. brg_certificate/tests/datapath/pacer_interval_tags_count_test/pacer_interval_tags_count_test.py +0 -73
  198. brg_certificate/tests/datapath/tx_repetition_algo_test/tx_repetition_algo_test.json +0 -17
  199. brg_certificate/tests/datapath/tx_repetition_algo_test/tx_repetition_algo_test.py +0 -118
  200. brg_certificate/tests/edge_mgmt/actions_test/actions_test.json +0 -14
  201. brg_certificate/tests/edge_mgmt/actions_test/actions_test.py +0 -396
  202. brg_certificate/tests/edge_mgmt/brg2brg_ota_ble5_test/brg2brg_ota_ble5_test.json +0 -20
  203. brg_certificate/tests/edge_mgmt/brg2brg_ota_ble5_test/brg2brg_ota_ble5_test.py +0 -94
  204. brg_certificate/tests/edge_mgmt/brg2brg_ota_test/brg2brg_ota_test.json +0 -19
  205. brg_certificate/tests/edge_mgmt/brg2brg_ota_test/brg2brg_ota_test.py +0 -87
  206. brg_certificate/tests/edge_mgmt/leds_test/leds_test.json +0 -17
  207. brg_certificate/tests/edge_mgmt/leds_test/leds_test.py +0 -223
  208. brg_certificate/tests/edge_mgmt/ota_test/ota_test.json +0 -17
  209. brg_certificate/tests/edge_mgmt/ota_test/ota_test.py +0 -128
  210. brg_certificate/tests/energy2400/output_power_test/output_power_test.json +0 -16
  211. brg_certificate/tests/energy2400/signal_indicator_ble5_10_250k_test/signal_indicator_ble5_10_250k_test.json +0 -20
  212. brg_certificate/tests/energy2400/signal_indicator_ble5_10_250k_test/signal_indicator_ble5_10_250k_test.py +0 -321
  213. brg_certificate/tests/energy2400/signal_indicator_ble5_10_500k_test/signal_indicator_ble5_10_500k_test.json +0 -20
  214. brg_certificate/tests/energy2400/signal_indicator_ble5_10_500k_test/signal_indicator_ble5_10_500k_test.py +0 -321
  215. brg_certificate/tests/energy2400/signal_indicator_sub1g_2_4_test/signal_indicator_sub1g_2_4_test.json +0 -20
  216. brg_certificate/tests/energy2400/signal_indicator_sub1g_2_4_test/signal_indicator_sub1g_2_4_test.py +0 -141
  217. brg_certificate/tests/energy2400/signal_indicator_test/signal_indicator_test.json +0 -20
  218. brg_certificate/tests/energy2400/signal_indicator_test/signal_indicator_test.py +0 -276
  219. brg_certificate/tests/energy_sub1g/signal_indicator_functionality_test/signal_indicator_functionality_test.json +0 -20
  220. brg_certificate/tests/energy_sub1g/signal_indicator_functionality_test/signal_indicator_functionality_test.py +0 -390
  221. brg_certificate/tests/energy_sub1g/signal_indicator_test/signal_indicator_test.json +0 -16
  222. brg_certificate/tests/energy_sub1g/signal_indicator_test/signal_indicator_test.py +0 -28
  223. brg_certificate/tests/sensors/ext_sensor_test/ext_sensor_test.py +0 -305
  224. brg_certificate/wltPb_pb2.pyi +0 -234
  225. brg_certificate/wlt_types.py +0 -113
  226. gw_certificate/ag/ut_defines.py +0 -364
  227. gw_certificate/ag/wlt_types.py +0 -85
  228. gw_certificate/ag/wlt_types_ag.py +0 -5310
  229. gw_certificate/ag/wlt_types_data.py +0 -64
  230. gw_certificate/api/extended_api.py +0 -23
  231. gw_certificate/api_if/200/data.json +0 -106
  232. gw_certificate/api_if/200/status.json +0 -47
  233. gw_certificate/api_if/201/data.json +0 -98
  234. gw_certificate/api_if/201/status.json +0 -53
  235. gw_certificate/api_if/205/logs.json +0 -12
  236. gw_certificate/api_if/api_validation.py +0 -38
  237. gw_certificate/api_if/gw_capabilities.py +0 -54
  238. gw_certificate/cert_results.py +0 -145
  239. gw_certificate/common/analysis_data_bricks.py +0 -60
  240. gw_certificate/common/debug.py +0 -42
  241. gw_certificate/common/serialization_formatter.py +0 -93
  242. gw_certificate/common/utils.py +0 -8
  243. gw_certificate/common/utils_defines.py +0 -15
  244. gw_certificate/common/wltPb_pb2.py +0 -84
  245. gw_certificate/gw_certificate.py +0 -154
  246. gw_certificate/gw_certificate_cli.py +0 -87
  247. gw_certificate/interface/4.4.91_app.zip +0 -0
  248. gw_certificate/interface/4.4.91_sd_bl_app.zip +0 -0
  249. gw_certificate/interface/ble_simulator.py +0 -61
  250. gw_certificate/interface/ble_sniffer.py +0 -189
  251. gw_certificate/interface/flash_fw.py +0 -90
  252. gw_certificate/interface/if_defines.py +0 -36
  253. gw_certificate/interface/mqtt.py +0 -563
  254. gw_certificate/interface/nrfutil-linux +0 -0
  255. gw_certificate/interface/nrfutil-mac +0 -0
  256. gw_certificate/interface/nrfutil.exe +0 -0
  257. gw_certificate/interface/pkt_generator.py +0 -594
  258. gw_certificate/interface/uart_if.py +0 -236
  259. gw_certificate/interface/uart_ports.py +0 -20
  260. gw_certificate/templates/results.html +0 -241
  261. gw_certificate/templates/stage.html +0 -22
  262. gw_certificate/templates/table.html +0 -6
  263. gw_certificate/templates/test.html +0 -38
  264. gw_certificate/tests/__init__.py +0 -10
  265. gw_certificate/tests/actions.py +0 -289
  266. gw_certificate/tests/bad_crc_to_PER_quantization.csv +0 -51
  267. gw_certificate/tests/connection.py +0 -188
  268. gw_certificate/tests/downlink.py +0 -172
  269. gw_certificate/tests/generic.py +0 -238
  270. gw_certificate/tests/registration.py +0 -340
  271. gw_certificate/tests/static/__init__.py +0 -0
  272. gw_certificate/tests/static/connection_defines.py +0 -9
  273. gw_certificate/tests/static/downlink_defines.py +0 -9
  274. gw_certificate/tests/static/generated_packet_table.py +0 -195
  275. gw_certificate/tests/static/packet_table.csv +0 -10067
  276. gw_certificate/tests/static/references.py +0 -5
  277. gw_certificate/tests/static/uplink_defines.py +0 -14
  278. gw_certificate/tests/throughput.py +0 -240
  279. gw_certificate/tests/uplink.py +0 -853
  280. wiliot_certificate-4.4.2.dist-info/METADATA +0 -211
  281. wiliot_certificate-4.4.2.dist-info/RECORD +0 -210
  282. wiliot_certificate-4.4.2.dist-info/entry_points.txt +0 -3
  283. wiliot_certificate-4.4.2.dist-info/top_level.txt +0 -3
  284. {brg_certificate → certificate}/__init__.py +0 -0
  285. {gw_certificate → common}/api_if/202/data.json +0 -0
  286. {gw_certificate/api_if/200 → common/api_if/202}/logs.json +0 -0
  287. {gw_certificate → common}/api_if/203/data.json +0 -0
  288. {gw_certificate/api_if/201 → common/api_if/203}/logs.json +0 -0
  289. {gw_certificate → common}/api_if/204/data.json +0 -0
  290. {gw_certificate/api_if/202 → common/api_if/204}/logs.json +0 -0
  291. {gw_certificate → common}/api_if/205/data.json +0 -0
  292. {gw_certificate/api_if/203 → common/api_if/205}/logs.json +0 -0
  293. {gw_certificate → common}/api_if/205/status.json +0 -0
  294. {gw_certificate/api_if/204 → common/api_if/206}/logs.json +0 -0
  295. {gw_certificate → common/api_if}/__init__.py +0 -0
  296. {gw_certificate/api_if → gui_certificate}/__init__.py +0 -0
  297. {wiliot_certificate-4.4.2.dist-info → wiliot_certificate-4.5.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,362 +0,0 @@
1
-
2
- import os
3
- import random
4
- import tabulate
5
- import importlib # needed for importing all of the tests
6
- from requests import codes as r_codes
7
-
8
- # Local imports
9
- import brg_certificate.cert_config as cert_config
10
- import brg_certificate.cert_common as cert_common
11
- import brg_certificate.cert_results as cert_results
12
- from brg_certificate.wlt_types import *
13
- from brg_certificate.cert_defines import *
14
- from brg_certificate.cert_prints import *
15
-
16
- MULTI_BRG_STR = "multi_brg" # used for multi brg tests
17
- GW_ONLY_STR = "gw_only" # used for gw only tests
18
- INTERNAL_BRG_STR = "internal_brg"
19
- ORIGINAL_AG_FILE = "wlt_types_ag.py"
20
-
21
- ##################################
22
- # Utils
23
- ##################################
24
-
25
- TEST_MODULES_MAP = {"calibration": ag.MODULE_CALIBRATION, "datapath": ag.MODULE_DATAPATH, "energy2400": ag.MODULE_ENERGY_2400, "energy_sub1g": ag.MODULE_ENERGY_SUB1G,
26
- "pwr_mgmt": ag.MODULE_PWR_MGMT, "sensors": ag.MODULE_EXT_SENSORS, "custom": ag.MODULE_CUSTOM}
27
-
28
- STATIC_RANDOM_ADDR_MASK = 0xC00000000000
29
- hex2alias_id_get = lambda id_str: cert_common.int2mac_get(int(id_str, 16) | STATIC_RANDOM_ADDR_MASK)
30
-
31
- def module2name(module_id):
32
- for k, v in TEST_MODULES_MAP.items():
33
- if module_id == v:
34
- return k
35
- return ''
36
-
37
- def load_module(module_name, module_path, rel_path="."):
38
- spec = importlib.util.spec_from_file_location(module_name, os.path.join(BASE_DIR, rel_path, module_path))
39
- module = importlib.util.module_from_spec(spec)
40
- spec.loader.exec_module(module)
41
- return module
42
-
43
- def handle_error(error, start_time):
44
- utPrint(error, "red")
45
- duration = (datetime.datetime.now()-start_time)
46
- cert_results.generate_results_files(html=True, pdf=False, start_time=start_time, duration=duration, error=error, pipeline=cert_common.pipeline_running())
47
- sys.exit(-1)
48
-
49
- ##################################
50
- # Test
51
- ##################################
52
- class WltTest:
53
- def __init__(self, line, gw, mqttc, sim_mqttc=None, brg0=None, brg1=None, exit_on_param_failure=False, gw_lan=False,
54
- gw_orig_versions={}, server=PROD, latest=False, release_candidate=False, private_setup=False,
55
- internal_brg_obj=None, gw_sim='', data='', port='', protobuf=False):
56
- if line:
57
- test_list_line = line.strip().split()
58
- self.name = test_list_line[0]
59
- self.test_module = ag.MODULE_EMPTY # Default test module
60
- # Determine test's module
61
- for s in self.name.split('/'):
62
- if s in TEST_MODULES_MAP:
63
- self.test_module = TEST_MODULES_MAP[s]
64
- break
65
- line_params = test_list_line[1:]
66
- self.dir = os.path.join("tests", self.name)
67
- self.module_name = os.path.join(os.path.basename(self.name))
68
- self.file = os.path.join(self.dir, os.path.basename(self.name)+".py")
69
- # Load test json
70
- test_json_file = open(os.path.join(BASE_DIR, self.dir, os.path.basename(self.name)+".json"))
71
- self.test_json = json.load(test_json_file)
72
- self.gw_only = self.test_json[GW_ONLY_TEST]
73
- self.multi_brg = self.test_json[MULTI_BRG_TEST]
74
- self.internal_brg = INTERNAL_BRG_STR in line_params
75
- if INTERNAL_BRG_STR in line_params: line_params.remove(INTERNAL_BRG_STR)
76
- self.create_test_phases_and_params(line_params)
77
- else:
78
- self.test_json = {}
79
- self.internal_brg = False
80
- self.multi_brg = False
81
- self.phases = [Phase(PRE_CONFIG), Phase(TEST_BODY), Phase(RESTORE_CONFIG)]
82
- self.params = []
83
-
84
- self.gw = gw
85
- self.internal_brg_obj = internal_brg_obj
86
- # Actual brg to cfg - can be brg0 or brg1
87
- self.active_brg = brg0
88
- self.ab = self.active_brg # alias name
89
- self.brg0 = brg0
90
- self.brg1 = brg1
91
- self.rc = TEST_PASSED
92
- self.reason = ""
93
- self.start_time = None
94
- self.end_time = None
95
- self.duration = None
96
- self.mqttc = mqttc
97
- self.sim_mqttc = sim_mqttc
98
- self.rtsa = ""
99
- self.exit_on_param_failure = exit_on_param_failure
100
- self.rand = random.randrange(255)
101
- self.gw_lan = gw_lan
102
- self.gw_orig_versions = gw_orig_versions
103
- self.server = server
104
- self.latest = latest
105
- self.release_candidate = release_candidate
106
- self.private_setup = private_setup
107
- self.gw_sim = gw_sim
108
- self.data = data
109
- self.port = port
110
- self.protobuf = protobuf
111
-
112
- def create_test_phases_and_params(self, line_params):
113
- self.params = []
114
- if len(self.test_json[ALL_SUPPORTED_VALUES]) > 0:
115
- self.phases = [Phase(PRE_CONFIG)] + [Phase(param) for param in self.test_json[ALL_SUPPORTED_VALUES]] + [Phase(RESTORE_CONFIG)]
116
- for param_phase in self.phases:
117
- param = Param(param_phase.name)
118
- if (param.name in line_params or param.value in [eval_param(p) for p in line_params]):
119
- self.params += [param]
120
- else:
121
- param_phase.tested = False
122
- param_phase.rc = TEST_SKIPPED
123
- if all([param_phase.rc == TEST_SKIPPED for param_phase in self.phases]):
124
- error = f"ERROR: All params skipped for test {self.name}! Check test list file and update the supported values!\n{[f.__dict__ for f in self.phases]}"
125
- handle_error(error, datetime.datetime.now())
126
- else:
127
- if line_params:
128
- error = f"ERROR: For {self.name} params exist in test_list but not in test_json!\nline_params:{line_params}"
129
- handle_error(error, datetime.datetime.now())
130
- self.phases = [Phase(PRE_CONFIG), Phase(TEST_BODY), Phase(RESTORE_CONFIG)]
131
-
132
- # Phase rc
133
- def set_phase_rc(self, phase_name, rc):
134
- phase = self.get_phase_by_name(phase_name)
135
- phase.rc = rc
136
-
137
- def get_phase_rc(self, phase_name):
138
- phase = self.get_phase_by_name(phase_name)
139
- return phase.rc
140
-
141
- # Phase reason
142
- def add_phase_reason(self, phase_name, reason):
143
- phase = self.get_phase_by_name(phase_name)
144
- if phase.reason:
145
- phase.reason += "\n"
146
- if reason not in phase.reason:
147
- phase.reason += reason
148
-
149
- def get_phase_reason(self, phase_name):
150
- phase = self.get_phase_by_name(phase_name)
151
- return phase.reason
152
-
153
- # Test funcs
154
- def get_phase_by_name(self, phase_name):
155
- for phase in self.phases:
156
- if phase.name == phase_name:
157
- return phase
158
- return None
159
-
160
- def update_overall_rc(self):
161
- if any([phase.rc == TEST_FAILED for phase in self.phases]):
162
- self.rc = TEST_FAILED
163
-
164
- def reset_result(self):
165
- self.rc = TEST_PASSED
166
- self.reason = ""
167
-
168
- def get_seq_id(self):
169
- self.rand = (self.rand + 1) % 256
170
- return self.rand
171
-
172
- # TODO - remove when test reason is re-designed
173
- def add_reason(self, reason):
174
- if self.reason:
175
- self.reason += "\n"
176
- if reason not in self.reason:
177
- self.reason += reason
178
-
179
- def internal_id_alias(self):
180
- return self.internal_brg_obj.id_alias
181
-
182
- ##################################
183
- # Phases
184
- ##################################
185
- class Phase:
186
- def __init__(self, input=None, tested=True, rc=TEST_INIT, reason=""):
187
- self.name = str(input)
188
- self.tested = tested
189
- self.rc = rc
190
- self.reason = reason
191
-
192
- def __repr__(self):
193
- return self.name
194
-
195
- ##################################
196
- # Param
197
- ##################################
198
- class Param:
199
- def __init__(self, input=None):
200
- self.name = str(input)
201
- self.value = eval_param(input)
202
-
203
- def __repr__(self):
204
- return self.name
205
-
206
- ##################################
207
- # Bridge
208
- ##################################
209
- class Bridge:
210
- def __init__(self, id_str="", board_type=0, cfg_hash=0, api_version=ag.API_VERSION_LATEST, interface_pkt=None, import_defs=True, rel_path="."):
211
- self.id_str = id_str
212
- self.id_int = hex_str2int(id_str)
213
- self.id_alias = hex2alias_id_get(id_str)
214
- self.board_type = interface_pkt.board_type if interface_pkt else board_type
215
- self.version = f"{interface_pkt.major_ver}.{interface_pkt.minor_ver}.{interface_pkt.patch_ver}" if interface_pkt else ""
216
- self.bl_version = interface_pkt.bl_version if interface_pkt else ""
217
- self.cfg_hash = interface_pkt.cfg_hash if interface_pkt else cfg_hash
218
- self.api_version = interface_pkt.api_version if interface_pkt else api_version
219
- if import_defs:
220
- self.defines_file_name = f'{ag.BOARD_TYPES_LIST[self.board_type]}_defines.py'
221
- # Override auto-generated defines and classes for the specific bridge
222
- if os.path.exists(f"./ag/{self.defines_file_name}"):
223
- new_defines = load_module(self.defines_file_name, f"./ag/{self.defines_file_name}", rel_path)
224
- else:
225
- new_defines = load_module(ORIGINAL_AG_FILE, f"./ag/{ORIGINAL_AG_FILE}", rel_path)
226
- ag.__dict__.update(new_defines.__dict__)
227
- self.sup_caps = []
228
- self.modules = []
229
- if interface_pkt:
230
- for key, value in interface_pkt.__dict__.items():
231
- if 'sup_cap_' in key and value:
232
- module = key.replace('sup_cap_','')
233
- if module in TEST_MODULES_MAP:
234
- self.sup_caps += [TEST_MODULES_MAP[module]]
235
- self.modules += [eval_pkt(ag.MODULES_DICT[TEST_MODULES_MAP[module]] + str(self.api_version))]
236
- setattr(self, module, eval_pkt(ag.MODULES_DICT[TEST_MODULES_MAP[module]] + str(self.api_version)))
237
-
238
- def update_modules(self):
239
- self.modules = []
240
- for sup_cap in self.sup_caps:
241
- self.modules += [eval_pkt(ag.MODULES_DICT[sup_cap] + str(self.api_version))]
242
-
243
- def is_sup_cap(self, test):
244
- return test.test_module in self.sup_caps if test.test_module and self.sup_caps else True
245
-
246
-
247
- def cfg_brg_defaults_ret_after_fail(test):
248
- utPrint(f"Configuring bridge {test.active_brg.id_str} to defaults", "BLUE")
249
- modules = test.active_brg.modules
250
- for module in modules:
251
- utPrint(f"Configuring {module.__name__} to defaults", "BLUE")
252
- cfg_pkt = cert_config.get_default_brg_pkt(test, module)
253
- res = cert_config.brg_configure(test=test, cfg_pkt=cfg_pkt)[1]
254
- if res == NO_RESPONSE:
255
- utPrint(f"FAILURE: {module.__name__} configuration to defaults", "RED")
256
- return NO_RESPONSE
257
- else:
258
- utPrint(f"SUCCESS: {module.__name__} configured to defaults", "GREEN")
259
- return DONE
260
-
261
- def handle_prep_brg_for_latest(test, interface, start_time):
262
- if test.rc == TEST_FAILED:
263
- utPrint(f"No ModuleIf pkts found, try again", "BLUE")
264
- test.rc = ""
265
- test, interface = cert_common.get_module_if_pkt(test)
266
- if test.rc == TEST_FAILED:
267
- error = f"ERROR: No ModuleIf pkts found for 2 tries, couldn't perform OTA for bridge"
268
- handle_error(error, start_time)
269
- version = f"{interface.major_ver}.{interface.minor_ver}.{interface.patch_ver}"
270
- board_type = interface.board_type
271
- utPrint(f"BRG version [{version}], board type [{board_type}]", "BLUE")
272
- utPrint(f"Skipping configurations for BRG {test.brg0.id_str} to defaults because of latest/rc flag", "BLUE")
273
- return Bridge(test.brg0.id_str, interface_pkt=interface)
274
-
275
- # Check BRGs are online and configure to defaults
276
- def ut_prep_brg(args, mqttc, start_time, gw, brg, gw_server, protobuf):
277
- brg = Bridge(brg)
278
- utPrint(SEP)
279
- if not cert_common.is_cert_running:
280
- versions_mgmt = load_module('versions_mgmt.py', f'{UTILS_BASE_REL_PATH}/versions_mgmt.py')
281
- brg_owner = versions_mgmt.gw_brg_owner(env=AWS, server=PROD, brg=brg.id_str)
282
- if brg_owner and not brg_owner in r_codes:
283
- print_warn(f"BRG {brg.id_str} owned by account {brg_owner}")
284
- test = WltTest("", gw, mqttc, brg0=brg, gw_lan=args.lan, server=gw_server, exit_on_param_failure=args.exit_on_param_failure,
285
- protobuf=protobuf)
286
- utPrint(f"Getting BRG {brg.id_str} version and board type", "BLUE")
287
- test, interface = cert_common.get_module_if_pkt(test)
288
- if args.latest or args.rc:
289
- return handle_prep_brg_for_latest(test, interface, start_time)
290
- elif test.rc == TEST_FAILED:
291
- error = f"ERROR: Didn't get ModuleIfV{test.active_brg.api_version} from BRG:{brg.id_str}!"
292
- handle_error(error, start_time)
293
- version = f"{interface.major_ver}.{interface.minor_ver}.{interface.patch_ver}"
294
- board_type = interface.board_type
295
- utPrint(f"BRG version [{version}], board type [{board_type}]", "BLUE")
296
- test.active_brg = Bridge(brg.id_str, interface_pkt=interface)
297
- modules_support = []
298
- for module in TEST_MODULES_MAP:
299
- modules_support.append([module, color("GREEN", "SUPPORTED") if TEST_MODULES_MAP[module] in test.active_brg.sup_caps else color("RED", "UNSUPPORTED")])
300
- utPrint(f"BRG {brg.id_str} modules support coverage:", "BLUE")
301
- print(tabulate.tabulate(modules_support, headers=['Module', 'Support'], tablefmt="fancy_grid"))
302
- test.active_brg.board_type = board_type
303
- cfg_output = cfg_brg_defaults_ret_after_fail(test=test)[1]
304
- if cfg_output == NO_RESPONSE:
305
- error = f"ERROR: Didn't get response from BRG:{brg.id_str}!"
306
- handle_error(error, start_time)
307
- test, interface = cert_common.get_module_if_pkt(test)
308
- if test.rc == TEST_FAILED:
309
- error = f"ERROR: Didn't get ModuleIfV{test.active_brg.api_version} from BRG:{brg.id_str}!"
310
- handle_error(error, start_time)
311
- utPrint(f"Received cfg hash {hex(interface.cfg_hash)}", "BLUE")
312
- if not interface.cfg_hash or len(str(interface.cfg_hash)) < BRG_CFG_HAS_LEN:
313
- error = f"ERROR: invalid cfg_hash for BRG:{brg.id_str}!"
314
- handle_error(error, start_time)
315
- utPrint(f"BRG {brg.id_str} cfg_hash_default={hex(interface.cfg_hash)}", "BLUE")
316
- return Bridge(brg.id_str, interface_pkt=interface)
317
-
318
- ##################################
319
- # Gateway
320
- ##################################
321
- # Used when gw is not really important for the test (e.g: gw_sim)
322
- def get_random_gw():
323
- return ''.join([random.choice('0123456789ABCDEF') for i in range(12)])
324
-
325
- def get_gw_id(gw):
326
- if gw.startswith(GW_SIM_PREFIX) and len(gw) == len(GW_SIM_PREFIX):
327
- return f"GW_SIM_{get_random_gw()}"
328
- else:
329
- return gw
330
-
331
- def ut_prep_gw(args, mqttc, start_time, tester_gw=False):
332
- # Check GW is online and configure to defaults
333
- utPrint(SEP)
334
- gw = args.brg_cloud_connectivity if args.brg_cloud_connectivity and not tester_gw else args.gw
335
- test = WltTest("", gw, mqttc, gw_lan=args.lan)
336
- utPrint(f"Getting GW {gw} Information", "BLUE")
337
- response = cert_common.get_gw_info(test)
338
- if response == NO_RESPONSE:
339
- error = f"ERROR: Didn't get response from {gw} !"
340
- handle_error(error, start_time)
341
- if ENTRIES in response[GW_INFO]:
342
- # Protobuf
343
- test.protobuf = True
344
- gw_version = {BLE_VERSION : response[GW_INFO][ENTRIES][BLE_VERSION][STR_VAL], WIFI_VERSION : response[GW_INFO][ENTRIES][WIFI_VERSION][STR_VAL]}
345
- internal_brg_mac_addr = response[GW_INFO][ENTRIES][BLE_MAC_ADDR][STR_VAL]
346
- gw_server = response[GW_INFO][ENTRIES][WLT_SERVER][STR_VAL] if WLT_SERVER in response[GW_INFO][ENTRIES] else PROD
347
- else:
348
- test.protobuf = False
349
- gw_version = {BLE_VERSION : response[GW_INFO][BLE_VERSION], WIFI_VERSION : response[GW_INFO][WIFI_VERSION]}
350
- internal_brg_mac_addr = response[GW_INFO][BLE_MAC_ADDR]
351
- gw_server = response[GW_INFO][WLT_SERVER] if WLT_SERVER in response[GW_INFO] else PROD
352
- if gw_server != args.server:
353
- handle_error(f"ERROR: Test server [{args.server}] does not match GW server [{gw_server}]!", start_time)
354
- print(f"Starting UT with GW ID {test.gw} and internal BRG ID {internal_brg_mac_addr}")
355
- if not args.latest and not args.rc:
356
- res = cert_config.config_gw_defaults(test, version=gw_version)[1]
357
- if res == NO_RESPONSE:
358
- handle_error("ERROR: Config GW to defaults failed!", start_time)
359
- else:
360
- utPrint(f"Skipping configurations for GW {gw} to defaults because of latest/rc flag", "BLUE")
361
- internal_brg = ut_prep_brg(args, mqttc, start_time, gw, internal_brg_mac_addr, gw_server, test.protobuf)
362
- return gw, internal_brg, gw_server, gw_version, test.protobuf
@@ -1,40 +0,0 @@
1
- # The certificate should run for every bridge change
2
- # The setup will include 1 tested BRG with cloud connectivity + 1 GW connected with UART or remotely
3
- # Run command example with COM PORT connection:
4
- # python brg_certificate_cli.py --gw SIM --brg_cloud_connectivity <XXXXXXXXXXXX> --tl certificate_bcc_sanity_test_list.txt --data sim --port <COM_PORT>
5
- # Run command example with remote GW connection:
6
- # python brg_certificate_cli.py --gw <GWYYYYYYYYYYYY> --brg_cloud_connectivity <XXXXXXXXXXXX> --tl certificate_bcc_sanity_test_list.txt --data sim
7
-
8
- # ------------- edge_mgmt -------------
9
- edge_mgmt/periodic_msgs_test
10
- edge_mgmt/actions_test ACTION_GW_HB ACTION_BLINK ACTION_SEND_HB ACTION_GET_BATTERY_SENSOR ACTION_GET_POF_DATA ACTION_PL_STATUS ACTION_GET_MODULE ACTION_REBOOT ACTION_RESTORE_DEFAULTS
11
-
12
- # ------------- energy2400 -------------
13
- energy2400/pattern_test ENERGY_PATTERN_2_4_CHANNEL_37 ENERGY_PATTERN_2_4_CHANNEL_39 ENERGY_PATTERN_2_4_FREQ_2454
14
- energy2400/output_power_test -12 0 3
15
- energy2400/duty_cycle_test 1 50 75
16
- energy2400/signal_indicator_test internal_brg brg0_rxtx_brg1_rxtx
17
-
18
- # ------------- energy_sub1g -------------
19
- energy_sub1g/pattern_test SUB1G_ENERGY_PATTERN_NO_ENERGIZING SUB1G_ENERGY_PATTERN_FCC_HOPPING SUB1G_ENERGY_PATTERN_SINGLE_TONE_917500 SUB1G_ENERGY_PATTERN_NZ_HOPPING
20
- energy_sub1g/duty_cycle_test 15 20 40 0
21
- energy_sub1g/signal_indicator_test 60,4
22
-
23
- # ------------- datapath -------------
24
- datapath/rssi_threshold_test -80
25
- datapath/pattern_test DATAPATH_PATTERN_38_38_39 DATAPATH_PATTERN_EU_PATTERN
26
- datapath/output_power_test -12 0 3
27
- datapath/pkt_filter_test PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT
28
- datapath/pkt_filter_gen3_test PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT
29
- datapath/pkt_filter_ble5_test PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT
30
- datapath/rx_channel_test RX_CHANNEL_37 RX_CHANNEL_38 RX_CHANNEL_10_250K RX_CHANNEL_10_500K
31
- datapath/aging_test low_pacer
32
- datapath/num_of_tags_test 500
33
-
34
- # ------------- calibration -------------
35
- calibration/output_power_test -12 0 3
36
- calibration/interval_test 1 25 50
37
- calibration/pattern_test CALIBRATION_PATTERN_38_38_39 CALIBRATION_PATTERN_DISABLE_BEACON
38
-
39
- # ------------- sensors -------------
40
- sensors/ext_sensor_test tag_data_only rssi_threshold snsr0_scrmbl_snsr1_no_scrmbl
@@ -1,48 +0,0 @@
1
- # The certificate should run for every bridge change
2
- # The setup will include 1 tested BRG with cloud connectivity + 1 GW connected with UART or remotely
3
- # Run command example with COM PORT connection:
4
- # python brg_certificate_cli.py --gw SIM --brg_cloud_connectivity <XXXXXXXXXXXX> --tl certificate_bcc_test_list.txt --data sim --port <COM_PORT>
5
- # Run command example with remote GW connection:
6
- # python brg_certificate_cli.py --gw <GWYYYYYYYYYYYY> --brg_cloud_connectivity <XXXXXXXXXXXX> --tl certificate_bcc_test_list.txt --data sim
7
-
8
- # ------------- edge_mgmt -------------
9
- edge_mgmt/periodic_msgs_test
10
- edge_mgmt/actions_test ACTION_GW_HB ACTION_BLINK ACTION_SEND_HB ACTION_GET_BATTERY_SENSOR ACTION_GET_POF_DATA ACTION_PL_STATUS ACTION_GET_MODULE ACTION_REBOOT ACTION_RESTORE_DEFAULTS
11
-
12
- # ------------- energy2400 -------------
13
- energy2400/pattern_test ENERGY_PATTERN_2_4_NO_ENERGIZING ENERGY_PATTERN_2_4_CHANNEL_37 ENERGY_PATTERN_2_4_CHANNEL_38 ENERGY_PATTERN_2_4_CHANNEL_39 ENERGY_PATTERN_2_4_FREQ_2450 ENERGY_PATTERN_2_4_FREQ_2454
14
- energy2400/output_power_test -12 -8 -4 0 2 3
15
- energy2400/duty_cycle_test 1 25 50 75
16
- energy2400/signal_indicator_test internal_brg rssi_threshold brg0_rx_brg1_tx brg0_none_brg1_rx brg0_rxtx_brg1_rxtx brg0_tx_brg1_none
17
-
18
- # ------------- energy_sub1g -------------
19
- energy_sub1g/pattern_test SUB1G_ENERGY_PATTERN_NO_ENERGIZING SUB1G_ENERGY_PATTERN_SINGLE_TONE_915000 SUB1G_ENERGY_PATTERN_FCC_HOPPING SUB1G_ENERGY_PATTERN_SINGLE_TONE_917500 SUB1G_ENERGY_PATTERN_NZ_HOPPING
20
- energy_sub1g/duty_cycle_test 15 20 40 0
21
- energy_sub1g/signal_indicator_test 60,4 100,3
22
-
23
- # ------------- datapath -------------
24
- datapath/rssi_threshold_test -80 -65 -10
25
- datapath/pattern_test DATAPATH_PATTERN_38_38_39 DATAPATH_PATTERN_EU_PATTERN
26
- datapath/output_power_test -12 -8 -4 0 2 3
27
- datapath/pacer_interval_test 5 15 30 60
28
- datapath/pacer_interval_ble5_test 5 15 30 60
29
- datapath/pkt_filter_test PKT_FILTER_RANDOM_FIRST_ARRIVING_PKT PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT PKT_FILTER_ADVANCED_PKT PKT_FILTER_TEMP_AND_ADVANCED_PKTS PKT_FILTER_TEMP_ADVANCED_AND_DEBUG_PKTS
30
- datapath/pkt_filter_gen3_test PKT_FILTER_RANDOM_FIRST_ARRIVING_PKT PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT PKT_FILTER_ADVANCED_PKT PKT_FILTER_TEMP_AND_ADVANCED_PKTS
31
- datapath/pkt_filter_ble5_test PKT_FILTER_RANDOM_FIRST_ARRIVING_PKT PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT PKT_FILTER_ADVANCED_PKT PKT_FILTER_TEMP_AND_ADVANCED_PKTS
32
- datapath/rx_channel_test RX_CHANNEL_37 RX_CHANNEL_38 RX_CHANNEL_39 RX_CHANNEL_10_250K RX_CHANNEL_10_500K
33
- datapath/rx_rate_gen2_test mid_values diff_pacer min_value max_value diff_rate
34
- datapath/rx_rate_gen3_test mid_values diff_pacer min_value max_value diff_rate
35
- datapath/pacer_interval_tags_count_test 1 10 15 30
36
- datapath/aging_test low_pacer high_pacer
37
- datapath/num_of_tags_test 5000
38
-
39
- # ------------- pwr_mgmt -------------
40
- pwr_mgmt/pwr_mgmt_test
41
-
42
- # ------------- calibration -------------
43
- calibration/output_power_test -12 -8 -4 0 2 3
44
- calibration/interval_test 1 25 50
45
- calibration/pattern_test CALIBRATION_PATTERN_38_38_39 CALIBRATION_PATTERN_STANDARD CALIBRATION_PATTERN_EU_PATTERN CALIBRATION_PATTERN_DISABLE_BEACON
46
-
47
- # ------------- sensors -------------
48
- sensors/ext_sensor_test tag_data_only rssi_threshold snsr0_no_scrmbl snsr1_scrmbl snsr0_scrmbl_snsr1_no_scrmbl snsr0_scrmbl_snsr1_scrmbl
@@ -1,43 +0,0 @@
1
- # The certificate should run for every bridge change
2
- # The setup will include 1 tested BRG + 1 GW connected with UART or remotely
3
- # Run command example with COM PORT connection:
4
- # python brg_certificate_cli.py --gw SIM --brg <XXXXXXXXXXXX> --tl certificate_sanity_test_list.txt --data sim --port <COM_PORT>
5
- # Run command example with remote GW connection:
6
- # python brg_certificate_cli.py --gw <GWYYYYYYYYYYYY> --brg <XXXXXXXXXXXX> --tl certificate_sanity_test_list.txt --data sim
7
-
8
- # ------------- edge_mgmt -------------
9
- edge_mgmt/periodic_msgs_test
10
- edge_mgmt/actions_test ACTION_GW_HB ACTION_BLINK ACTION_SEND_HB ACTION_GET_BATTERY_SENSOR ACTION_GET_POF_DATA ACTION_PL_STATUS ACTION_GET_MODULE ACTION_REBOOT ACTION_RESTORE_DEFAULTS
11
-
12
- # ------------- energy2400 -------------
13
- energy2400/pattern_test ENERGY_PATTERN_2_4_CHANNEL_37 ENERGY_PATTERN_2_4_CHANNEL_39 ENERGY_PATTERN_2_4_FREQ_2454
14
- energy2400/output_power_test -12 0 3
15
- energy2400/duty_cycle_test 1 50 75
16
- energy2400/signal_indicator_test internal_brg brg0_rxtx_brg1_rxtx
17
-
18
- # ------------- energy_sub1g -------------
19
- energy_sub1g/pattern_test SUB1G_ENERGY_PATTERN_NO_ENERGIZING SUB1G_ENERGY_PATTERN_FCC_HOPPING SUB1G_ENERGY_PATTERN_SINGLE_TONE_917500 SUB1G_ENERGY_PATTERN_NZ_HOPPING
20
- energy_sub1g/duty_cycle_test 15 20 40 0
21
- energy_sub1g/signal_indicator_test 60,4
22
-
23
- # ------------- datapath -------------
24
- datapath/rssi_threshold_test -80
25
- datapath/pattern_test DATAPATH_PATTERN_38_38_39 DATAPATH_PATTERN_EU_PATTERN
26
- datapath/tx_repetition_test 2 4
27
- datapath/output_power_test -12 0 3
28
- datapath/pkt_filter_test PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT
29
- datapath/pkt_filter_gen3_test PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT
30
- datapath/pkt_filter_ble5_test PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT
31
- datapath/rx_channel_test RX_CHANNEL_37 RX_CHANNEL_38 RX_CHANNEL_10_250K RX_CHANNEL_10_500K
32
- datapath/aging_test low_pacer
33
- datapath/stress_gen3_test rep1_adaptive_pacer
34
- datapath/num_of_tags_test 500
35
-
36
-
37
- # ------------- calibration -------------
38
- calibration/output_power_test -12 0 3
39
- calibration/interval_test 1 25 50
40
- calibration/pattern_test CALIBRATION_PATTERN_38_38_39 CALIBRATION_PATTERN_DISABLE_BEACON
41
-
42
- # ------------- sensors -------------
43
- sensors/ext_sensor_test tag_data_only rssi_threshold snsr0_scrmbl_snsr1_no_scrmbl
@@ -1,53 +0,0 @@
1
- # The certificate should run for every bridge change
2
- # The setup will include 1 tested BRG + 1 GW connected with UART or remotely
3
- # Run command example with COM PORT connection:
4
- # python brg_certificate_cli.py --gw SIM --brg <XXXXXXXXXXXX> --tl certificate_test_list.txt --data sim --port <COM_PORT>
5
- # Run command example with remote GW connection:
6
- # python brg_certificate_cli.py --gw <GWYYYYYYYYYYYY> --brg <XXXXXXXXXXXX> --tl certificate_test_list.txt --data sim
7
-
8
- # ------------- edge_mgmt -------------
9
- edge_mgmt/periodic_msgs_test
10
- edge_mgmt/actions_test ACTION_GW_HB ACTION_BLINK ACTION_SEND_HB ACTION_GET_BATTERY_SENSOR ACTION_GET_POF_DATA ACTION_PL_STATUS ACTION_GET_MODULE ACTION_REBOOT ACTION_RESTORE_DEFAULTS
11
-
12
- # ------------- energy2400 -------------
13
- energy2400/pattern_test ENERGY_PATTERN_2_4_NO_ENERGIZING ENERGY_PATTERN_2_4_CHANNEL_37 ENERGY_PATTERN_2_4_CHANNEL_38 ENERGY_PATTERN_2_4_CHANNEL_39 ENERGY_PATTERN_2_4_FREQ_2450 ENERGY_PATTERN_2_4_FREQ_2454
14
- energy2400/output_power_test -12 -8 -4 0 2 3
15
- energy2400/duty_cycle_test 1 25 50 75
16
- energy2400/signal_indicator_test internal_brg rssi_threshold brg0_rx_brg1_tx brg0_none_brg1_rx brg0_rxtx_brg1_rxtx brg0_tx_brg1_none
17
- energy2400/signal_indicator_ble5_10_500k_test internal_brg rssi_threshold brg0_tx_brg1_rx brg0_none_brg1_rx brg0_tx_brg1_none
18
- energy2400/signal_indicator_ble5_10_250k_test internal_brg rssi_threshold brg0_tx_brg1_rx brg0_none_brg1_rx brg0_tx_brg1_none
19
-
20
- # ------------- energy_sub1g -------------
21
- energy_sub1g/pattern_test SUB1G_ENERGY_PATTERN_NO_ENERGIZING SUB1G_ENERGY_PATTERN_SINGLE_TONE_915000 SUB1G_ENERGY_PATTERN_FCC_HOPPING SUB1G_ENERGY_PATTERN_SINGLE_TONE_917500 SUB1G_ENERGY_PATTERN_NZ_HOPPING
22
- energy_sub1g/duty_cycle_test 15 20 40 0
23
- energy_sub1g/signal_indicator_test 60,4 100,3
24
-
25
- # ------------- datapath -------------
26
- datapath/rssi_threshold_test -80 -65 -10
27
- datapath/pattern_test DATAPATH_PATTERN_38_38_39 DATAPATH_PATTERN_EU_PATTERN
28
- datapath/tx_repetition_test 2 4
29
- datapath/output_power_test -12 -8 -4 0 2 3
30
- datapath/pacer_interval_test 5 15 30 60
31
- datapath/pacer_interval_ble5_test 5 15 30 60
32
- datapath/pkt_filter_test PKT_FILTER_RANDOM_FIRST_ARRIVING_PKT PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT PKT_FILTER_ADVANCED_PKT PKT_FILTER_TEMP_AND_ADVANCED_PKTS PKT_FILTER_TEMP_ADVANCED_AND_DEBUG_PKTS
33
- datapath/pkt_filter_gen3_test PKT_FILTER_RANDOM_FIRST_ARRIVING_PKT PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT PKT_FILTER_ADVANCED_PKT PKT_FILTER_TEMP_AND_ADVANCED_PKTS
34
- datapath/pkt_filter_ble5_test PKT_FILTER_RANDOM_FIRST_ARRIVING_PKT PKT_FILTER_DISABLE_FORWARDING PKT_FILTER_TEMP_PKT PKT_FILTER_ADVANCED_PKT PKT_FILTER_TEMP_AND_ADVANCED_PKTS
35
- datapath/rx_channel_test RX_CHANNEL_37 RX_CHANNEL_38 RX_CHANNEL_39 RX_CHANNEL_10_250K RX_CHANNEL_10_500K
36
- datapath/rx_rate_gen2_test mid_values diff_pacer min_value max_value diff_rate
37
- datapath/rx_rate_gen3_test mid_values diff_pacer min_value max_value diff_rate
38
- datapath/pacer_interval_tags_count_test 1 10 15 30
39
- datapath/stress_test rep3 rep2 rep1
40
- datapath/stress_gen3_test rep3 rep2 rep1
41
- datapath/aging_test low_pacer high_pacer
42
- datapath/num_of_tags_test 5000
43
-
44
- # ------------- pwr_mgmt -------------
45
- pwr_mgmt/pwr_mgmt_test
46
-
47
- # ------------- calibration -------------
48
- calibration/output_power_test -12 -8 -4 0 2 3
49
- calibration/interval_test 1 25 50
50
- calibration/pattern_test CALIBRATION_PATTERN_38_38_39 CALIBRATION_PATTERN_STANDARD CALIBRATION_PATTERN_EU_PATTERN CALIBRATION_PATTERN_DISABLE_BEACON
51
-
52
- # ------------- sensors -------------
53
- sensors/ext_sensor_test tag_data_only rssi_threshold snsr0_no_scrmbl snsr1_scrmbl snsr0_scrmbl_snsr1_no_scrmbl snsr0_scrmbl_snsr1_scrmbl
@@ -1,10 +0,0 @@
1
- {
2
- "customBroker" : true,
3
- "port" : 8883,
4
- "brokerUrl" : "mqtts://mqtt.eclipseprojects.io",
5
- "username" : "",
6
- "password" : "",
7
- "updateTopic" : "update-test/wiliot/",
8
- "statusTopic" : "status-test/wiliot/",
9
- "dataTopic" : "data-test/wiliot/"
10
- }
@@ -1,10 +0,0 @@
1
- {
2
- "customBroker" : true,
3
- "port" : 8883,
4
- "brokerUrl" : "mqtts://broker.hivemq.com",
5
- "username" : "",
6
- "password" : "",
7
- "updateTopic" : "update-test/wiliot/",
8
- "statusTopic" : "status-test/wiliot/",
9
- "dataTopic" : "data-test/wiliot/"
10
- }
@@ -1,10 +0,0 @@
1
- {
2
- "customBroker" : true,
3
- "port" : 1883,
4
- "brokerUrl" : "mqtts://localhost",
5
- "username" : "",
6
- "password" : "",
7
- "updateTopic" : "update-test/wiliot/",
8
- "statusTopic" : "status-test/wiliot/",
9
- "dataTopic" : "data-test/wiliot/"
10
- }