cosmos 4.1.1-java → 4.2.0-java

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 (336) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -2
  3. data/.travis.yml +2 -0
  4. data/.yardopts +1 -0
  5. data/Gemfile +1 -0
  6. data/Manifest.txt +130 -0
  7. data/autohotkey/tools/ConfigEditorAHK +19 -0
  8. data/autohotkey/tools/cmd_extractor.ahk +4 -4
  9. data/autohotkey/tools/cmd_sequence.ahk +9 -5
  10. data/autohotkey/tools/config_editor.ahk +197 -0
  11. data/autohotkey/tools/packet_viewer.ahk +12 -6
  12. data/autohotkey/tools/replay.ahk +29 -29
  13. data/autohotkey/tools/script_runner.ahk +10 -2
  14. data/autohotkey/tools/tlm_extractor.ahk +7 -8
  15. data/autohotkey/tools/tlm_grapher.ahk +21 -9
  16. data/bin/dart_import +2 -0
  17. data/cosmos.gemspec +18 -16
  18. data/data/config/cmd_tlm_server.yaml +9 -0
  19. data/data/config/interface_modifiers.yaml +17 -0
  20. data/data/config/item_modifiers.yaml +3 -3
  21. data/data/crc.txt +184 -90
  22. data/data/dart.png +0 -0
  23. data/demo/Gemfile +1 -0
  24. data/demo/Rakefile +4 -0
  25. data/demo/config/dart/Gemfile +54 -0
  26. data/demo/config/data/crc.txt +28 -21
  27. data/demo/config/system/system.txt +3 -0
  28. data/demo/config/system/system2.txt +3 -0
  29. data/demo/config/targets/INST/cmd_tlm/inst_cmds.txt +3 -3
  30. data/demo/config/targets/INST/cmd_tlm/inst_tlm.txt +1 -1
  31. data/demo/config/targets/INST/lib/sim_inst.rb +1 -1
  32. data/demo/config/targets/INST/screens/adcs.txt +2 -1
  33. data/demo/config/targets/INST/screens/array.txt +1 -1
  34. data/demo/config/targets/INST/screens/block.txt +1 -1
  35. data/demo/config/targets/INST/screens/commanding.txt +7 -2
  36. data/demo/config/targets/INST/screens/graphs.txt +1 -1
  37. data/demo/config/targets/INST/screens/ground.txt +1 -1
  38. data/demo/config/targets/INST/screens/hs.txt +2 -1
  39. data/demo/config/targets/INST/screens/latest.txt +1 -1
  40. data/demo/config/targets/INST/screens/limits.txt +1 -1
  41. data/demo/config/targets/INST/screens/other.txt +1 -1
  42. data/demo/config/targets/INST/screens/tabs.txt +1 -1
  43. data/demo/config/tools/cmd_tlm_server/cmd_tlm_server.txt +2 -2
  44. data/demo/config/tools/cmd_tlm_server/cmd_tlm_server2.txt +3 -1
  45. data/demo/config/tools/launcher/launcher.txt +3 -2
  46. data/demo/tools/Dart +16 -0
  47. data/demo/tools/Dart.bat +9 -0
  48. data/demo/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +0 -0
  49. data/demo/tools/mac/ConfigEditor.app/Contents/MacOS/main.sh +0 -0
  50. data/install/Gemfile +1 -0
  51. data/install/Rakefile +4 -0
  52. data/install/config/dart/Gemfile +54 -0
  53. data/install/config/data/crc.txt +6 -3
  54. data/install/config/system/system.txt +3 -0
  55. data/install/config/tools/launcher/launcher.txt +3 -2
  56. data/install/tools/Dart +16 -0
  57. data/install/tools/Dart.bat +9 -0
  58. data/install/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +0 -0
  59. data/install/tools/mac/ConfigEditor.app/Contents/MacOS/main.sh +0 -0
  60. data/lib/cosmos/core_ext/time.rb +8 -8
  61. data/lib/cosmos/dart/.rspec +1 -0
  62. data/lib/cosmos/dart/Gemfile +69 -0
  63. data/lib/cosmos/dart/Rakefile +7 -0
  64. data/lib/cosmos/dart/app/assets/config/manifest.js +4 -0
  65. data/lib/cosmos/dart/app/assets/images/.keep +0 -0
  66. data/lib/cosmos/dart/app/assets/javascripts/application.js +13 -0
  67. data/lib/cosmos/dart/app/assets/javascripts/cable.js +13 -0
  68. data/lib/cosmos/dart/app/assets/stylesheets/application.css.scss +15 -0
  69. data/lib/cosmos/dart/app/channels/application_cable/channel.rb +4 -0
  70. data/lib/cosmos/dart/app/channels/application_cable/connection.rb +4 -0
  71. data/lib/cosmos/dart/app/controllers/application_controller.rb +3 -0
  72. data/lib/cosmos/dart/app/helpers/application_helper.rb +2 -0
  73. data/lib/cosmos/dart/app/jobs/application_job.rb +2 -0
  74. data/lib/cosmos/dart/app/mailers/application_mailer.rb +4 -0
  75. data/lib/cosmos/dart/app/models/application_record.rb +3 -0
  76. data/lib/cosmos/dart/app/models/item.rb +6 -0
  77. data/lib/cosmos/dart/app/models/item_to_decom_table_mapping.rb +9 -0
  78. data/lib/cosmos/dart/app/models/packet.rb +4 -0
  79. data/lib/cosmos/dart/app/models/packet_config.rb +7 -0
  80. data/lib/cosmos/dart/app/models/packet_log.rb +3 -0
  81. data/lib/cosmos/dart/app/models/packet_log_entry.rb +41 -0
  82. data/lib/cosmos/dart/app/models/system_config.rb +2 -0
  83. data/lib/cosmos/dart/app/models/target.rb +4 -0
  84. data/lib/cosmos/dart/app/views/layouts/application.html.erb +14 -0
  85. data/lib/cosmos/dart/app/views/layouts/mailer.html.erb +13 -0
  86. data/lib/cosmos/dart/app/views/layouts/mailer.text.erb +1 -0
  87. data/lib/cosmos/dart/bin/bundle +3 -0
  88. data/lib/cosmos/dart/bin/rails +4 -0
  89. data/lib/cosmos/dart/bin/rake +4 -0
  90. data/lib/cosmos/dart/bin/setup +34 -0
  91. data/lib/cosmos/dart/bin/update +29 -0
  92. data/lib/cosmos/dart/config.ru +5 -0
  93. data/lib/cosmos/dart/config/application.rb +29 -0
  94. data/lib/cosmos/dart/config/boot.rb +3 -0
  95. data/lib/cosmos/dart/config/cable.yml +9 -0
  96. data/lib/cosmos/dart/config/database.yml +23 -0
  97. data/lib/cosmos/dart/config/environment.rb +5 -0
  98. data/lib/cosmos/dart/config/environments/development.rb +62 -0
  99. data/lib/cosmos/dart/config/environments/production.rb +84 -0
  100. data/lib/cosmos/dart/config/environments/test.rb +42 -0
  101. data/lib/cosmos/dart/config/initializers/application_controller_renderer.rb +6 -0
  102. data/lib/cosmos/dart/config/initializers/assets.rb +12 -0
  103. data/lib/cosmos/dart/config/initializers/backtrace_silencers.rb +7 -0
  104. data/lib/cosmos/dart/config/initializers/cookies_serializer.rb +5 -0
  105. data/lib/cosmos/dart/config/initializers/filter_parameter_logging.rb +4 -0
  106. data/lib/cosmos/dart/config/initializers/inflections.rb +16 -0
  107. data/lib/cosmos/dart/config/initializers/mime_types.rb +4 -0
  108. data/lib/cosmos/dart/config/initializers/new_framework_defaults.rb +25 -0
  109. data/lib/cosmos/dart/config/initializers/session_store.rb +3 -0
  110. data/lib/cosmos/dart/config/initializers/wrap_parameters.rb +14 -0
  111. data/lib/cosmos/dart/config/locales/en.yml +23 -0
  112. data/lib/cosmos/dart/config/puma.rb +47 -0
  113. data/lib/cosmos/dart/config/routes.rb +3 -0
  114. data/lib/cosmos/dart/config/secrets.yml +22 -0
  115. data/lib/cosmos/dart/db/migrate/20170406172907_create_targets.rb +8 -0
  116. data/lib/cosmos/dart/db/migrate/20170406172927_create_packets.rb +10 -0
  117. data/lib/cosmos/dart/db/migrate/20170406172937_create_packet_logs.rb +9 -0
  118. data/lib/cosmos/dart/db/migrate/20170406172943_create_packet_log_entries.rb +16 -0
  119. data/lib/cosmos/dart/db/migrate/20170406183500_change_packet_log_entries_primary_key.rb +5 -0
  120. data/lib/cosmos/dart/db/migrate/20170407153618_add_unique_requirements.rb +7 -0
  121. data/lib/cosmos/dart/db/migrate/20170511155447_add_meta_id_to_packet_log_entries.rb +6 -0
  122. data/lib/cosmos/dart/db/migrate/20170523185056_rename_received_time_and_add_is_tlm_to_packet_log_entries.rb +7 -0
  123. data/lib/cosmos/dart/db/migrate/20170525201157_create_items.rb +10 -0
  124. data/lib/cosmos/dart/db/migrate/20170525201315_create_system_configs.rb +9 -0
  125. data/lib/cosmos/dart/db/migrate/20170525201624_create_packet_configs.rb +11 -0
  126. data/lib/cosmos/dart/db/migrate/20170525201745_create_item_to_decom_table_mappings.rb +12 -0
  127. data/lib/cosmos/dart/db/migrate/20170525201939_create_decom_tables.rb +12 -0
  128. data/lib/cosmos/dart/db/migrate/20170525202051_add_decom_state_to_packet_log_entry.rb +5 -0
  129. data/lib/cosmos/dart/db/migrate/20170913160409_update_items.rb +6 -0
  130. data/lib/cosmos/dart/db/migrate/20170913160558_update_item_to_decom_table_mapping.rb +11 -0
  131. data/lib/cosmos/dart/db/migrate/20170913160916_udpate_decom_table.rb +6 -0
  132. data/lib/cosmos/dart/db/migrate/20170913212026_add_ready_to_packet_configs.rb +5 -0
  133. data/lib/cosmos/dart/db/migrate/20170913223556_modify_tables.rb +9 -0
  134. data/lib/cosmos/dart/db/migrate/20170914215744_modify_mapping_table.rb +6 -0
  135. data/lib/cosmos/dart/db/migrate/20170919201433_add_system_config_id_to_packet_config.rb +11 -0
  136. data/lib/cosmos/dart/db/migrate/20170919210307_add_max_table_index_to_packet_configs.rb +5 -0
  137. data/lib/cosmos/dart/db/migrate/20171215225546_add_ready_to_packet_log_entries.rb +5 -0
  138. data/lib/cosmos/dart/db/migrate/20180116214338_add_index_for_ple_ready_to_packet_log_entries.rb +5 -0
  139. data/lib/cosmos/dart/db/schema.rb +103 -0
  140. data/lib/cosmos/dart/db/seeds.rb +7 -0
  141. data/lib/cosmos/dart/examples/dart_decom_client.rb +45 -0
  142. data/lib/cosmos/dart/examples/dart_stream_client.rb +93 -0
  143. data/lib/cosmos/dart/lib/dart_common.rb +749 -0
  144. data/lib/cosmos/dart/lib/dart_database_cleaner.rb +172 -0
  145. data/lib/cosmos/dart/lib/dart_decom_query.rb +184 -0
  146. data/lib/cosmos/dart/lib/dart_decommutator.rb +235 -0
  147. data/lib/cosmos/dart/lib/dart_importer.rb +154 -0
  148. data/lib/cosmos/dart/lib/dart_logging.rb +50 -0
  149. data/lib/cosmos/dart/lib/dart_packet_log_writer.rb +139 -0
  150. data/lib/cosmos/dart/lib/dart_reducer_manager.rb +85 -0
  151. data/lib/cosmos/dart/lib/dart_reducer_worker_thread.rb +263 -0
  152. data/lib/cosmos/dart/lib/dart_tcpip_server_interface.rb +142 -0
  153. data/lib/cosmos/dart/processes/dart.rb +145 -0
  154. data/lib/cosmos/dart/processes/dart_decom_server.rb +39 -0
  155. data/lib/cosmos/dart/processes/dart_import.rb +63 -0
  156. data/lib/cosmos/dart/processes/dart_ingester.rb +92 -0
  157. data/lib/cosmos/dart/processes/dart_reducer.rb +27 -0
  158. data/lib/cosmos/dart/processes/dart_stream_server.rb +31 -0
  159. data/lib/cosmos/dart/processes/dart_worker.rb +37 -0
  160. data/lib/cosmos/dart/spec/dart/dart_common_spec.rb +333 -0
  161. data/lib/cosmos/dart/spec/dart/dart_database_cleaner_spec.rb +455 -0
  162. data/lib/cosmos/dart/spec/dart/dart_decom_query_spec.rb +153 -0
  163. data/lib/cosmos/dart/spec/dart/dart_decommutator_spec.rb +336 -0
  164. data/lib/cosmos/dart/spec/dart/dart_importer_spec.rb +83 -0
  165. data/lib/cosmos/dart/spec/dart/dart_logging_spec.rb +30 -0
  166. data/lib/cosmos/dart/spec/dart/dart_packet_log_writer_spec.rb +149 -0
  167. data/lib/cosmos/dart/spec/dart/dart_reducer_manager_spec.rb +289 -0
  168. data/lib/cosmos/dart/spec/dart/dart_tcpip_server_interface_spec.rb +241 -0
  169. data/lib/cosmos/dart/spec/rails_helper.rb +60 -0
  170. data/lib/cosmos/dart/spec/spec_helper.rb +139 -0
  171. data/lib/cosmos/gui/dialogs/about_dialog.rb +1 -1
  172. data/lib/cosmos/gui/dialogs/dart_dialog.rb +60 -0
  173. data/lib/cosmos/gui/dialogs/legal_dialog.rb +1 -0
  174. data/lib/cosmos/gui/dialogs/scroll_text_dialog.rb +0 -3
  175. data/lib/cosmos/gui/qt.rb +10 -1
  176. data/lib/cosmos/gui/text/completion.rb +10 -9
  177. data/lib/cosmos/gui/text/completion_text_edit.rb +16 -14
  178. data/lib/cosmos/gui/text/ruby_editor.rb +2 -2
  179. data/lib/cosmos/gui/widgets/dart_frame.rb +142 -0
  180. data/lib/cosmos/gui/widgets/dart_meta_frame.rb +119 -0
  181. data/lib/cosmos/gui/widgets/packet_log_frame.rb +42 -12
  182. data/lib/cosmos/interfaces/interface.rb +1 -2
  183. data/lib/cosmos/interfaces/protocols/crc_protocol.rb +26 -8
  184. data/lib/cosmos/interfaces/protocols/fixed_protocol.rb +8 -2
  185. data/lib/cosmos/interfaces/protocols/protocol.rb +2 -1
  186. data/lib/cosmos/interfaces/protocols/template_protocol.rb +1 -1
  187. data/lib/cosmos/interfaces/stream_interface.rb +1 -0
  188. data/lib/cosmos/interfaces/tcpip_server_interface.rb +2 -3
  189. data/lib/cosmos/io/json_drb_object.rb +1 -1
  190. data/lib/cosmos/io/json_rpc.rb +2 -1
  191. data/lib/cosmos/io/win32_serial_driver.rb +2 -9
  192. data/lib/cosmos/packet_logs/packet_log_writer.rb +1 -1
  193. data/lib/cosmos/packets/packet.rb +22 -12
  194. data/lib/cosmos/packets/packet_config.rb +2 -1
  195. data/lib/cosmos/packets/packet_item.rb +26 -24
  196. data/lib/cosmos/packets/parsers/macro_parser.rb +5 -2
  197. data/lib/cosmos/packets/parsers/packet_item_parser.rb +35 -17
  198. data/lib/cosmos/packets/parsers/packet_parser.rb +3 -10
  199. data/lib/cosmos/packets/parsers/xtce_converter.rb +21 -35
  200. data/lib/cosmos/packets/parsers/xtce_parser.rb +54 -46
  201. data/lib/cosmos/packets/structure.rb +10 -2
  202. data/lib/cosmos/packets/structure_item.rb +22 -8
  203. data/lib/cosmos/processors/statistics_processor.rb +2 -0
  204. data/lib/cosmos/script/api_shared.rb +13 -12
  205. data/lib/cosmos/script/cmd_tlm_server.rb +4 -0
  206. data/lib/cosmos/script/commands.rb +3 -15
  207. data/lib/cosmos/script/script.rb +69 -23
  208. data/lib/cosmos/streams/tcpip_client_stream.rb +2 -2
  209. data/lib/cosmos/system/system.rb +42 -25
  210. data/lib/cosmos/system/target.rb +6 -2
  211. data/lib/cosmos/tools/cmd_extractor/cmd_extractor.rb +177 -36
  212. data/lib/cosmos/tools/cmd_sender/cmd_param_table_item_delegate.rb +3 -2
  213. data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +34 -8
  214. data/lib/cosmos/tools/cmd_sequence/cmd_sequence.rb +80 -25
  215. data/lib/cosmos/tools/cmd_tlm_server/api.rb +19 -4
  216. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server.rb +15 -14
  217. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui.rb +15 -9
  218. data/lib/cosmos/tools/cmd_tlm_server/gui/interfaces_tab.rb +1 -9
  219. data/lib/cosmos/tools/cmd_tlm_server/gui/logging_tab.rb +1 -6
  220. data/lib/cosmos/tools/cmd_tlm_server/gui/packets_tab.rb +1 -3
  221. data/lib/cosmos/tools/cmd_tlm_server/gui/replay_tab.rb +84 -7
  222. data/lib/cosmos/tools/cmd_tlm_server/gui/status_tab.rb +0 -1
  223. data/lib/cosmos/tools/cmd_tlm_server/gui/targets_tab.rb +1 -5
  224. data/lib/cosmos/tools/cmd_tlm_server/limits_groups_background_task.rb +3 -2
  225. data/lib/cosmos/tools/cmd_tlm_server/replay_backend.rb +159 -27
  226. data/lib/cosmos/tools/cmd_tlm_server/routers.rb +1 -1
  227. data/lib/cosmos/tools/config_editor/config_editor.rb +17 -52
  228. data/lib/cosmos/tools/config_editor/config_editor_frame.rb +0 -5
  229. data/lib/cosmos/tools/data_viewer/data_viewer.rb +111 -0
  230. data/lib/cosmos/tools/limits_monitor/limits_monitor.rb +31 -18
  231. data/lib/cosmos/tools/packet_viewer/packet_viewer.rb +12 -3
  232. data/lib/cosmos/tools/script_runner/script_runner.rb +27 -14
  233. data/lib/cosmos/tools/script_runner/script_runner_frame.rb +104 -37
  234. data/lib/cosmos/tools/table_manager/table_config.rb +1 -1
  235. data/lib/cosmos/tools/table_manager/table_item_parser.rb +4 -2
  236. data/lib/cosmos/tools/table_manager/table_manager.rb +0 -5
  237. data/lib/cosmos/tools/table_manager/table_manager_core.rb +0 -1
  238. data/lib/cosmos/tools/test_runner/test.rb +1 -3
  239. data/lib/cosmos/tools/test_runner/test_runner.rb +26 -15
  240. data/lib/cosmos/tools/tlm_extractor/tlm_extractor.rb +290 -137
  241. data/lib/cosmos/tools/tlm_extractor/tlm_extractor_config.rb +122 -25
  242. data/lib/cosmos/tools/tlm_extractor/tlm_extractor_processor.rb +67 -0
  243. data/lib/cosmos/tools/tlm_grapher/data_object_editors/housekeeping_data_object_editor.rb +28 -0
  244. data/lib/cosmos/tools/tlm_grapher/data_object_editors/xy_data_object_editor.rb +36 -0
  245. data/lib/cosmos/tools/tlm_grapher/data_objects/data_object.rb +42 -3
  246. data/lib/cosmos/tools/tlm_grapher/data_objects/housekeeping_data_object.rb +88 -14
  247. data/lib/cosmos/tools/tlm_grapher/data_objects/linegraph_data_object.rb +2 -5
  248. data/lib/cosmos/tools/tlm_grapher/data_objects/singlexy_data_object.rb +2 -6
  249. data/lib/cosmos/tools/tlm_grapher/data_objects/xy_data_object.rb +74 -18
  250. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_config.rb +3 -7
  251. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_dart_thread.rb +159 -0
  252. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_tool.rb +49 -2
  253. data/lib/cosmos/tools/tlm_viewer/screen.rb +3 -0
  254. data/lib/cosmos/tools/tlm_viewer/tlm_viewer_config.rb +0 -2
  255. data/lib/cosmos/tools/tlm_viewer/widgets.rb +1 -0
  256. data/lib/cosmos/tools/tlm_viewer/widgets/backgroundbutton_widget.rb +54 -0
  257. data/lib/cosmos/tools/tlm_viewer/widgets/button_widget.rb +5 -5
  258. data/lib/cosmos/top_level.rb +1 -0
  259. data/lib/cosmos/utilities/crc.rb +3 -0
  260. data/lib/cosmos/utilities/csv.rb +1 -0
  261. data/lib/cosmos/utilities/message_log.rb +2 -1
  262. data/lib/cosmos/utilities/simulated_target.rb +8 -8
  263. data/lib/cosmos/version.rb +5 -5
  264. data/lib/cosmos/win32/win32.rb +4 -10
  265. data/run_gui_tests.bat +2 -1
  266. data/spec/config/config_parser_spec.rb +4 -4
  267. data/spec/core_ext/array_spec.rb +1 -1
  268. data/spec/core_ext/exception_spec.rb +12 -12
  269. data/spec/core_ext/file_spec.rb +6 -6
  270. data/spec/core_ext/hash_spec.rb +1 -1
  271. data/spec/core_ext/socket_spec.rb +2 -2
  272. data/spec/core_ext/string_spec.rb +13 -13
  273. data/spec/core_ext/time_spec.rb +0 -2
  274. data/spec/gui/utilities/script_module_gui_spec.rb +3 -3
  275. data/spec/install/config/targets/INST/cmd_tlm/inst_tlm.txt +6 -6
  276. data/spec/install/config/tools/cmd_tlm_server/cmd_tlm_server.txt +4 -0
  277. data/spec/interfaces/cmd_tlm_server_interface_spec.rb +6 -2
  278. data/spec/interfaces/interface_spec.rb +0 -1
  279. data/spec/interfaces/linc_interface_spec.rb +0 -5
  280. data/spec/interfaces/protocols/crc_protocol_spec.rb +201 -85
  281. data/spec/interfaces/protocols/fixed_protocol_spec.rb +33 -9
  282. data/spec/interfaces/protocols/length_protocol_spec.rb +1 -1
  283. data/spec/interfaces/protocols/override_protocol_spec.rb +6 -2
  284. data/spec/interfaces/protocols/preidentified_protocol_spec.rb +1 -5
  285. data/spec/interfaces/protocols/template_protocol_spec.rb +0 -1
  286. data/spec/interfaces/simulated_target_interface_spec.rb +5 -5
  287. data/spec/interfaces/udp_interface_spec.rb +2 -4
  288. data/spec/io/buffered_file_spec.rb +8 -12
  289. data/spec/io/json_drb_spec.rb +9 -9
  290. data/spec/io/json_rpc_spec.rb +4 -4
  291. data/spec/io/raw_logger_spec.rb +4 -3
  292. data/spec/packet_logs/packet_log_reader_spec.rb +3 -6
  293. data/spec/packet_logs/packet_log_writer_spec.rb +4 -4
  294. data/spec/packets/binary_accessor_spec.rb +5 -8
  295. data/spec/packets/commands_spec.rb +2 -2
  296. data/spec/packets/limits_spec.rb +2 -2
  297. data/spec/packets/packet_config_spec.rb +12 -0
  298. data/spec/packets/packet_item_limits_spec.rb +1 -1
  299. data/spec/packets/packet_item_spec.rb +9 -9
  300. data/spec/packets/packet_spec.rb +15 -5
  301. data/spec/packets/parsers/packet_item_parser_spec.rb +27 -0
  302. data/spec/packets/parsers/xtce_parser_spec.rb +27 -30
  303. data/spec/packets/structure_spec.rb +2 -1
  304. data/spec/packets/telemetry_spec.rb +3 -5
  305. data/spec/processors/statistics_processor_spec.rb +35 -0
  306. data/spec/script/cmd_tlm_server_spec.rb +4 -21
  307. data/spec/script/commands_disconnect_spec.rb +46 -58
  308. data/spec/script/commands_spec.rb +40 -61
  309. data/spec/script/limits_spec.rb +1 -21
  310. data/spec/script/script_spec.rb +32 -41
  311. data/spec/script/scripting_spec.rb +166 -185
  312. data/spec/script/telemetry_spec.rb +10 -5
  313. data/spec/script/tools_spec.rb +2 -24
  314. data/spec/spec_helper.rb +11 -5
  315. data/spec/system/system_spec.rb +17 -12
  316. data/spec/tools/cmd_tlm_server/api_spec.rb +21 -10
  317. data/spec/tools/cmd_tlm_server/background_tasks_spec.rb +15 -16
  318. data/spec/tools/cmd_tlm_server/cmd_tlm_server_config_spec.rb +0 -1
  319. data/spec/tools/cmd_tlm_server/cmd_tlm_server_spec.rb +16 -27
  320. data/spec/tools/cmd_tlm_server/commanding_spec.rb +2 -6
  321. data/spec/tools/cmd_tlm_server/connections_spec.rb +0 -4
  322. data/spec/tools/cmd_tlm_server/interface_thread_spec.rb +13 -13
  323. data/spec/tools/cmd_tlm_server/interfaces_spec.rb +5 -9
  324. data/spec/tools/cmd_tlm_server/limits_groups_background_task_spec.rb +11 -3
  325. data/spec/tools/cmd_tlm_server/packet_logging_spec.rb +0 -4
  326. data/spec/tools/cmd_tlm_server/router_thread_spec.rb +5 -5
  327. data/spec/tools/cmd_tlm_server/routers_spec.rb +5 -9
  328. data/spec/tools/table_manager/table_config_spec.rb +0 -1
  329. data/spec/tools/table_manager/tablemanager_core_spec.rb +23 -23
  330. data/spec/tools/tlm_viewer/tlm_viewer_config_spec.rb +6 -4
  331. data/spec/top_level/top_level_spec.rb +9 -9
  332. data/spec/utilities/csv_spec.rb +2 -12
  333. data/spec/utilities/logger_spec.rb +6 -6
  334. data/spec/utilities/message_log_spec.rb +3 -11
  335. data/tasks/gemfile_stats.rake +2 -2
  336. metadata +167 -60
@@ -21,10 +21,6 @@ module Cosmos
21
21
  allow(@interface).to receive(:disconnect) { nil }
22
22
  end
23
23
 
24
- after(:each) do
25
- clean_config()
26
- end
27
-
28
24
  describe "initialize" do
29
25
  it "initializes attributes" do
30
26
  @interface.add_protocol(FixedProtocol, [2, 1, '0xDEADBEEF', false, true], :READ_WRITE)
@@ -38,25 +34,46 @@ module Cosmos
38
34
  end
39
35
 
40
36
  describe "read_data" do
37
+ $index = 0
41
38
  class FixedStream < Stream
42
39
  def connect; end
43
40
  def connected?; true; end
44
- def read; "\x01\x02"; end
41
+ def read
42
+ case $index
43
+ when 0
44
+ "\x00" # UNKNOWN
45
+ when 1
46
+ "\x01" # SYSTEM META
47
+ when 2
48
+ "\x02" # SYSTEM LIMITS
49
+ end
50
+ end
45
51
  end
46
52
 
47
53
  it "returns unknown packets" do
48
54
  @interface.add_protocol(FixedProtocol, [1], :READ)
49
55
  @interface.instance_variable_set(:@stream, FixedStream.new)
56
+ @interface.target_names = ['SYSTEM']
57
+ # Initialize the read with a packet identified as SYSTEM META
58
+ $index = 1
59
+ packet = @interface.read
60
+ expect(packet.received_time.to_f).to_not eql 0.0
61
+ expect(packet.target_name).to eql "SYSTEM"
62
+ expect(packet.packet_name).to eql "META"
63
+ expect(packet.buffer[0]).to eql "\x01"
64
+ # Return zeros which will not be identified
65
+ $index = 0
50
66
  packet = @interface.read
51
67
  expect(packet.received_time.to_f).to eql 0.0
52
68
  expect(packet.target_name).to eql nil
53
69
  expect(packet.packet_name).to eql nil
54
- expect(packet.buffer).to eql "\x01\x02"
70
+ expect(packet.buffer).to eql "\x00"
55
71
  end
56
72
 
57
73
  it "raises an exception if unknown packet" do
58
74
  @interface.add_protocol(FixedProtocol, [1, 0, nil, true, false, true], :READ)
59
75
  @interface.instance_variable_set(:@stream, FixedStream.new)
76
+ @interface.target_names = ['SYSTEM']
60
77
  expect { @interface.read }.to raise_error(/Unknown data/)
61
78
  end
62
79
 
@@ -64,29 +81,34 @@ module Cosmos
64
81
  @interface.add_protocol(FixedProtocol, [1], :READ)
65
82
  @interface.instance_variable_set(:@stream, FixedStream.new)
66
83
  @interface.target_names = ['BLAH']
84
+ $index = 1
67
85
  packet = @interface.read
68
86
  expect(packet.received_time.to_f).to eql 0.0
69
87
  expect(packet.target_name).to eql nil
70
88
  expect(packet.packet_name).to eql nil
71
- expect(packet.buffer).to eql "\x01\x02"
89
+ expect(packet.buffer).to eql "\x01"
72
90
  end
73
91
 
74
92
  it "reads telemetry data from the stream" do
75
93
  @interface.add_protocol(FixedProtocol, [1], :READ_WRITE)
76
94
  @interface.instance_variable_set(:@stream, FixedStream.new)
77
95
  @interface.target_names = ['SYSTEM']
96
+ $index = 1
78
97
  packet = @interface.read
79
98
  expect(packet.received_time.to_f).to be_within(0.1).of(Time.now.to_f)
80
99
  expect(packet.target_name).to eql 'SYSTEM'
81
100
  expect(packet.packet_name).to eql 'META'
101
+ $index = 2
82
102
  packet = @interface.read
83
103
  expect(packet.received_time.to_f).to be_within(0.1).of(Time.now.to_f)
84
104
  expect(packet.target_name).to eql 'SYSTEM'
85
105
  expect(packet.packet_name).to eql 'LIMITS_CHANGE'
106
+ $index = 1
86
107
  packet = @interface.read
87
108
  expect(packet.received_time.to_f).to be_within(0.1).of(Time.now.to_f)
88
109
  expect(packet.target_name).to eql 'SYSTEM'
89
110
  expect(packet.packet_name).to eql 'META'
111
+ $index = 2
90
112
  packet = @interface.read
91
113
  expect(packet.received_time.to_f).to be_within(0.1).of(Time.now.to_f)
92
114
  expect(packet.target_name).to eql 'SYSTEM'
@@ -95,7 +117,9 @@ module Cosmos
95
117
 
96
118
  it "reads command data from the stream" do
97
119
  $index = 0
98
- class FixedStream < Stream
120
+ class FixedStream2 < Stream
121
+ def connect; end
122
+ def connected?; true; end
99
123
  def read
100
124
  case $index
101
125
  when 0
@@ -107,7 +131,7 @@ module Cosmos
107
131
  end
108
132
  end
109
133
  @interface.add_protocol(FixedProtocol, [8, 0, '0x1ACFFC1D', false], :READ_WRITE)
110
- @interface.instance_variable_set(:@stream, FixedStream.new)
134
+ @interface.instance_variable_set(:@stream, FixedStream2.new)
111
135
  @interface.target_names = ['SYSTEM']
112
136
  packet = @interface.read
113
137
  expect(packet.received_time.to_f).to be_within(0.01).of(Time.now.to_f)
@@ -172,7 +172,7 @@ module Cosmos
172
172
  nil, # sync
173
173
  50], :READ_WRITE) # max_length
174
174
  $buffer = "\x00\x01\xFF\xFF\x03\x04"
175
- expect { packet = @interface.read }.to raise_error(RuntimeError, "Length value received larger than max_length: 65535 > 50")
175
+ expect { @interface.read }.to raise_error(RuntimeError, "Length value received larger than max_length: 65535 > 50")
176
176
  end
177
177
 
178
178
  it "handles a sync value in the packet" do
@@ -132,7 +132,9 @@ module Cosmos
132
132
  end
133
133
 
134
134
  it "warns the user if the protocol is not required" do
135
+ # Save cmd_tlm_server.txt
135
136
  cts = File.join(Cosmos::USERPATH,'config','tools','cmd_tlm_server','cmd_tlm_server.txt')
137
+ FileUtils.mv cts, Cosmos::USERPATH
136
138
  FileUtils.mkdir_p(File.dirname(cts))
137
139
  File.open(cts,'w') do |file|
138
140
  file.puts 'INTERFACE INST_INT interface.rb'
@@ -151,8 +153,10 @@ module Cosmos
151
153
  @server.stop
152
154
  shutdown_cmd_tlm()
153
155
  sleep(0.1)
154
- clean_config()
155
- FileUtils.rm_rf File.join(Cosmos::USERPATH,'config','tools')
156
+ # Restore cmd_tlm_server.txt
157
+ FileUtils.mv File.join(Cosmos::USERPATH, 'cmd_tlm_server.txt'),
158
+ File.join(Cosmos::USERPATH,'config','tools','cmd_tlm_server')
159
+ System.class_eval('@@instance = nil')
156
160
  end
157
161
  end
158
162
  end
@@ -21,10 +21,6 @@ module Cosmos
21
21
  allow(@interface).to receive(:connected?) { true }
22
22
  end
23
23
 
24
- after(:all) do
25
- clean_config()
26
- end
27
-
28
24
  class PreStream < Stream
29
25
  def connect; end
30
26
  def connected?; true; end
@@ -40,7 +36,7 @@ module Cosmos
40
36
  time = Time.new(2020,1,31,12,15,30.5)
41
37
  pkt.received_time = time
42
38
  @interface.write(pkt)
43
- expect { packet = @interface.read }.to raise_error(RuntimeError)
39
+ expect { @interface.read }.to raise_error(RuntimeError)
44
40
  end
45
41
 
46
42
  describe "initialize" do
@@ -167,7 +167,6 @@ module Cosmos
167
167
  packet.get_item("RSP_PACKET").default = ""
168
168
  packet.restore_defaults
169
169
  @interface.connect
170
- start = Time.now
171
170
  logger = class_double("Cosmos::Logger").as_stubbed_const(:transfer_nested_constants => true)
172
171
  expect(logger).to_not receive(:error)
173
172
  @interface.write(packet)
@@ -83,11 +83,11 @@ end
83
83
  expect(sti.connected?).to be false
84
84
  sti.connect
85
85
  pkt = sti.read
86
- #~ expect(pkt.target_name).to eql "SYSTEM"
87
- #~ expect(pkt.packet_name).to eql "LIMITS_CHANGE"
88
- #~ pkt = sti.read
89
- #~ expect(pkt.target_name).to eql "SYSTEM"
90
- #~ expect(pkt.packet_name).to eql "LIMITS_CHANGE"
86
+ expect(pkt.target_name).to eql "SYSTEM"
87
+ expect(pkt.packet_name).to eql "LIMITS_CHANGE"
88
+ pkt = sti.read
89
+ expect(pkt.target_name).to eql "SYSTEM"
90
+ expect(pkt.packet_name).to eql "LIMITS_CHANGE"
91
91
  end
92
92
  end
93
93
 
@@ -173,7 +173,6 @@ module Cosmos
173
173
  expect(i.write_count).to eql 0
174
174
  pkt = Packet.new('tgt','pkt')
175
175
  pkt.buffer = "\x00\x01\x02\x03"
176
- packet = nil
177
176
  i.write(pkt)
178
177
  data = read.read
179
178
  expect(i.write_count).to eql 1
@@ -192,9 +191,8 @@ module Cosmos
192
191
  expect(i.raw_logger_pair.write_logger.logging_enabled).to be true
193
192
  pkt = Packet.new('tgt','pkt')
194
193
  pkt.buffer = "\x00\x01\x02\x03"
195
- packet = nil
196
194
  i.write(pkt)
197
- data = read.read
195
+ _ = read.read
198
196
  filename = i.raw_logger_pair.write_logger.filename
199
197
  i.stop_raw_logging
200
198
  expect(i.raw_logger_pair.write_logger.logging_enabled).to be false
@@ -238,7 +236,7 @@ module Cosmos
238
236
  i.start_raw_logging
239
237
  expect(i.raw_logger_pair.write_logger.logging_enabled).to be true
240
238
  i.write_raw("\x00\x01\x02\x03")
241
- data = read.read
239
+ _ = read.read
242
240
  filename = i.raw_logger_pair.write_logger.filename
243
241
  i.stop_raw_logging
244
242
  expect(i.raw_logger_pair.write_logger.logging_enabled).to be false
@@ -23,13 +23,9 @@ module Cosmos
23
23
  end
24
24
  end
25
25
 
26
- after(:all) do
27
- clean_config()
28
- end
29
-
30
26
  describe "read" do
31
27
  it "reads less than the buffer size" do
32
- file = BufferedFile.open(@filename, "rb") do |file|
28
+ BufferedFile.open(@filename, "rb") do |file|
33
29
  expect(file.read(8)).to eql DATA[0..7]
34
30
  expect(file.pos).to eql 8
35
31
  expect(file.read(4)).to eql DATA[8..11]
@@ -51,7 +47,7 @@ module Cosmos
51
47
  end
52
48
 
53
49
  it "handles trying to read past the end" do
54
- file = BufferedFile.open(@filename, "rb") do |file|
50
+ BufferedFile.open(@filename, "rb") do |file|
55
51
  file.seek(-16, IO::SEEK_END)
56
52
  expect(file.pos).to eql ((2 * BufferedFile::BUFFER_SIZE) - 16)
57
53
  expect(file.read(DATA.length * 10)).to eql(DATA)
@@ -62,7 +58,7 @@ module Cosmos
62
58
  end
63
59
 
64
60
  it "reads equal to the buffer size" do
65
- file = BufferedFile.open(@filename, "rb") do |file|
61
+ BufferedFile.open(@filename, "rb") do |file|
66
62
  expect(file.read(BufferedFile::BUFFER_SIZE)).to eql(DATA * (BufferedFile::BUFFER_SIZE / DATA.length))
67
63
  expect(file.pos).to eql BufferedFile::BUFFER_SIZE
68
64
  expect(file.read(BufferedFile::BUFFER_SIZE)).to eql(DATA * (BufferedFile::BUFFER_SIZE / DATA.length))
@@ -72,7 +68,7 @@ module Cosmos
72
68
  end
73
69
 
74
70
  it "reads greater than the buffer size" do
75
- file = BufferedFile.open(@filename, "rb") do |file|
71
+ BufferedFile.open(@filename, "rb") do |file|
76
72
  expect(file.read(BufferedFile::BUFFER_SIZE + 1)).to eql(DATA * (BufferedFile::BUFFER_SIZE / DATA.length) << DATA[0..0])
77
73
  expect(file.pos).to eql BufferedFile::BUFFER_SIZE + 1
78
74
  expect(file.read(BufferedFile::BUFFER_SIZE + 1)).to eql((DATA * (BufferedFile::BUFFER_SIZE / DATA.length))[1..-1])
@@ -82,7 +78,7 @@ module Cosmos
82
78
  end
83
79
 
84
80
  it "reads greater than the buffer size after a previous read" do
85
- file = BufferedFile.open(@filename, "rb") do |file|
81
+ BufferedFile.open(@filename, "rb") do |file|
86
82
  expect(file.read(DATA.length * 10)).to eql(DATA * 10)
87
83
  expect(file.pos).to eql DATA.length * 10
88
84
  expect(file.read(BufferedFile::BUFFER_SIZE + 1)).to eql(DATA * ((BufferedFile::BUFFER_SIZE + 10) / DATA.length) << DATA[0])
@@ -93,13 +89,13 @@ module Cosmos
93
89
 
94
90
  describe "seek" do
95
91
  it "raises if given more than 2 arguments" do
96
- file = BufferedFile.open(@filename, "rb") do |file|
92
+ BufferedFile.open(@filename, "rb") do |file|
97
93
  expect { file.seek(0, 4, IO::SEEK_CUR) }.to raise_error(ArgumentError)
98
94
  end
99
95
  end
100
96
 
101
97
  it "implies SEEK_SET with 1 argument" do
102
- file = BufferedFile.open(@filename, "rb") do |file|
98
+ BufferedFile.open(@filename, "rb") do |file|
103
99
  expect(file.read(8)).to eql DATA[0..7]
104
100
  expect(file.pos).to eql 8
105
101
  file.seek(4, IO::SEEK_CUR)
@@ -110,7 +106,7 @@ module Cosmos
110
106
  end
111
107
 
112
108
  it "has reads still work afterwards" do
113
- file = BufferedFile.open(@filename, "rb") do |file|
109
+ BufferedFile.open(@filename, "rb") do |file|
114
110
  expect(file.read(8)).to eql DATA[0..7]
115
111
  expect(file.pos).to eql 8
116
112
  file.seek(4, IO::SEEK_CUR)
@@ -85,7 +85,7 @@ module Cosmos
85
85
  expect { @json.start_service('blah', 7777, self) }.to raise_error(/JsonDRb http server could not be started/)
86
86
  sleep 5
87
87
  expect($system_exit_count).to eql(system_exit_count + 1)
88
- expect(stdout.string).to match /JsonDRb http server could not be started or unexpectedly died/
88
+ expect(stdout.string).to match(/JsonDRb http server could not be started or unexpectedly died/)
89
89
  @json.stop_service
90
90
  sleep(0.1)
91
91
  end
@@ -121,7 +121,7 @@ module Cosmos
121
121
  @json.stop_service
122
122
  sleep(0.1)
123
123
 
124
- expect(stdout.string).to match /JsonDRb http server could not be started or unexpectedly died/
124
+ expect(stdout.string).to match(/JsonDRb http server could not be started or unexpectedly died/)
125
125
  end
126
126
 
127
127
  Dir[File.join(Cosmos::USERPATH,"*_exception.txt")].each do |file|
@@ -135,7 +135,7 @@ module Cosmos
135
135
  client = HTTPClient.new
136
136
  res = client.post("http://127.0.0.1:7777", "")
137
137
  expect(res.status).to eq 403
138
- expect(res.body).to match /Forbidden/
138
+ expect(res.body).to match(/Forbidden/)
139
139
  @json.stop_service
140
140
  sleep(0.1)
141
141
  end
@@ -150,7 +150,7 @@ module Cosmos
150
150
 
151
151
  @json.start_service('127.0.0.1', 7777, MyServer1.new)
152
152
  request_data = JsonRpcRequest.new('my_method', 'param', 1).to_json
153
- response_data, error_code = @json.process_request(request_data, Time.now)
153
+ _, error_code = @json.process_request(request_data, Time.now)
154
154
  expect(error_code).to eq nil
155
155
  @json.stop_service
156
156
  sleep(0.1)
@@ -164,7 +164,7 @@ module Cosmos
164
164
  request_data = JsonRpcRequest.new('my_method', 'param', 1).to_json
165
165
  response_data, error_code = @json.process_request(request_data, Time.now)
166
166
  expect(error_code).to eql -32601
167
- expect(response_data).to match /Method not found/
167
+ expect(response_data).to match(/Method not found/)
168
168
  @json.stop_service
169
169
  sleep(0.1)
170
170
  end
@@ -179,7 +179,7 @@ module Cosmos
179
179
  request_data = JsonRpcRequest.new('my_method', 'param1', 1).to_json
180
180
  response_data, error_code = @json.process_request(request_data, Time.now)
181
181
  expect(error_code).to eql -32602
182
- expect(response_data).to match /Invalid params/
182
+ expect(response_data).to match(/Invalid params/)
183
183
  @json.stop_service
184
184
  sleep(0.1)
185
185
  end
@@ -195,7 +195,7 @@ module Cosmos
195
195
  request_data = JsonRpcRequest.new('my_method', 'param', 1).to_json
196
196
  response_data, error_code = @json.process_request(request_data, Time.now)
197
197
  expect(error_code).to eql -1
198
- expect(response_data).to match /Method Error/
198
+ expect(response_data).to match(/Method Error/)
199
199
  @json.stop_service
200
200
  sleep(0.1)
201
201
  end
@@ -205,7 +205,7 @@ module Cosmos
205
205
  request_data = JsonRpcRequest.new('send', 'param', 1).to_json
206
206
  response_data, error_code = @json.process_request(request_data, Time.now)
207
207
  expect(error_code).to eql -1
208
- expect(response_data).to match /Cannot call unauthorized methods/
208
+ expect(response_data).to match(/Cannot call unauthorized methods/)
209
209
  @json.stop_service
210
210
  sleep(0.1)
211
211
  end
@@ -217,7 +217,7 @@ module Cosmos
217
217
  request_data.gsub!("2.0","1.1")
218
218
  response_data, error_code = @json.process_request(request_data, Time.now)
219
219
  expect(error_code).to eql -32600
220
- expect(response_data).to match /Invalid Request/
220
+ expect(response_data).to match(/Invalid Request/)
221
221
  @json.stop_service
222
222
  sleep(0.1)
223
223
  end
@@ -79,7 +79,7 @@ end
79
79
  describe Time do
80
80
  it "implements as_json" do
81
81
  time = Time.new(2020,01,31,12,20,10)
82
- expect(time.as_json).to match "2020-01-31 12:20:10"
82
+ expect(time.as_json).to match("2020-01-31 12:20:10")
83
83
  end
84
84
  end
85
85
 
@@ -93,7 +93,7 @@ end
93
93
  describe DateTime do
94
94
  it "implements as_json" do
95
95
  dt = DateTime.new(2020,01,31,12,20,10)
96
- expect(dt.as_json).to match "2020-01-31T12:20:10"
96
+ expect(dt.as_json).to match("2020-01-31T12:20:10")
97
97
  end
98
98
  end
99
99
 
@@ -168,7 +168,7 @@ module Cosmos
168
168
 
169
169
  describe "to_json" do
170
170
  it "returns the json string" do
171
- json = expect(JsonRpcRequest.new("puts","test",10).to_json).to be_a String
171
+ expect(JsonRpcRequest.new("puts","test",10).to_json).to be_a String
172
172
  end
173
173
  end
174
174
 
@@ -206,7 +206,7 @@ module Cosmos
206
206
 
207
207
  describe "to_json" do
208
208
  it "returns the json string" do
209
- json = expect(JsonRpcResponse.new(10).to_json).to be_a String
209
+ expect(JsonRpcResponse.new(10).to_json).to be_a String
210
210
  end
211
211
  end
212
212
 
@@ -19,6 +19,7 @@ module Cosmos
19
19
  end
20
20
 
21
21
  after(:each) do
22
+ # Clean after each so we can check for single log files
22
23
  clean_config()
23
24
  end
24
25
 
@@ -92,7 +93,7 @@ module Cosmos
92
93
  raw_logger = RawLogger.new('MYINT', :WRITE, true, 200, nil)
93
94
  raw_logger.write("\x00\x01\x02\x03")
94
95
  raw_logger.stop
95
- expect(stdout.string).to match "Error opening"
96
+ expect(stdout.string).to match("Error opening")
96
97
  end
97
98
  end
98
99
 
@@ -102,7 +103,7 @@ module Cosmos
102
103
  raw_logger = RawLogger.new('MYINT', :WRITE, true, 200, nil)
103
104
  raw_logger.write("\x00\x01\x02\x03")
104
105
  raw_logger.stop
105
- expect(stdout.string).to match "Error closing"
106
+ expect(stdout.string).to match("Error closing")
106
107
  end
107
108
  end
108
109
 
@@ -113,7 +114,7 @@ module Cosmos
113
114
  allow(raw_logger.instance_variable_get(:@file)).to receive(:write) { raise "Error" }
114
115
  raw_logger.write("\x00\x01\x02\x03")
115
116
  raw_logger.stop
116
- expect(stdout.string).to match "Error writing"
117
+ expect(stdout.string).to match("Error writing")
117
118
  end
118
119
  end
119
120
  end
@@ -61,10 +61,6 @@ module Cosmos
61
61
  plw.stop
62
62
  end
63
63
 
64
- after(:all) do
65
- clean_config()
66
- end
67
-
68
64
  before(:each) do
69
65
  @plr = PacketLogReader.new
70
66
  end
@@ -157,10 +153,10 @@ module Cosmos
157
153
  end
158
154
 
159
155
  # Load the original configuration
160
- original_config_name, err = System.load_configuration
156
+ _, err = System.load_configuration
161
157
  expect(err).to eql nil
162
158
  expect(System.telemetry.target_names).to eql %w(OVERRIDE SYSTEM)
163
- original_pkts = System.telemetry.packets('SYSTEM').keys
159
+ System.telemetry.packets('SYSTEM').keys
164
160
 
165
161
  # Create a new configuration by writing another telemetry file
166
162
  File.open(File.join(@config_targets,'SYSTEM','cmd_tlm','test1_tlm.txt'),'w') do |file|
@@ -199,6 +195,7 @@ module Cosmos
199
195
  File.join(Cosmos::USERPATH,'config','system')
200
196
 
201
197
  FileUtils.rm_f(File.join(@config_targets,'SYSTEM','cmd_tlm','test1_tlm.txt'))
198
+ System.class_eval('@@instance = nil')
202
199
  end
203
200
  end
204
201