cosmos 3.2.1 → 3.3.0

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 (364) hide show
  1. checksums.yaml +4 -4
  2. data/Manifest.txt +195 -0
  3. data/README.md +3 -3
  4. data/data/crc.txt +52 -52
  5. data/lib/cosmos.rb +1 -1
  6. data/lib/cosmos/core_ext/time.rb +11 -9
  7. data/lib/cosmos/gui/choosers/telemetry_chooser.rb +0 -2
  8. data/lib/cosmos/gui/dialogs/about_dialog.rb +2 -2
  9. data/lib/cosmos/gui/dialogs/exception_dialog.rb +2 -2
  10. data/lib/cosmos/gui/dialogs/progress_dialog.rb +11 -5
  11. data/lib/cosmos/gui/dialogs/splash.rb +32 -10
  12. data/lib/cosmos/gui/dialogs/tlm_details_dialog.rb +1 -1
  13. data/lib/cosmos/gui/line_graph/line_graph_drawing.rb +2 -2
  14. data/lib/cosmos/gui/qt.rb +22 -22
  15. data/lib/cosmos/io/json_drb.rb +4 -4
  16. data/lib/cosmos/io/json_rpc.rb +21 -21
  17. data/lib/cosmos/packet_logs/packet_log_writer.rb +18 -20
  18. data/lib/cosmos/packets/commands.rb +8 -6
  19. data/lib/cosmos/packets/limits.rb +3 -2
  20. data/lib/cosmos/packets/packet.rb +14 -11
  21. data/lib/cosmos/packets/parsers/limits_parser.rb +1 -1
  22. data/lib/cosmos/packets/parsers/macro_parser.rb +4 -4
  23. data/lib/cosmos/packets/parsers/state_parser.rb +1 -1
  24. data/lib/cosmos/packets/structure.rb +2 -2
  25. data/lib/cosmos/packets/telemetry.rb +5 -4
  26. data/lib/cosmos/script/script.rb +6 -6
  27. data/lib/cosmos/streams/tcpip_socket_stream.rb +2 -1
  28. data/lib/cosmos/streams/template_stream_protocol.rb +1 -1
  29. data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +1 -1
  30. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui.rb +5 -8
  31. data/lib/cosmos/tools/cmd_tlm_server/gui/interfaces_tab.rb +4 -3
  32. data/lib/cosmos/tools/cmd_tlm_server/gui/packets_tab.rb +9 -3
  33. data/lib/cosmos/tools/cmd_tlm_server/gui/status_tab.rb +15 -11
  34. data/lib/cosmos/tools/data_viewer/data_viewer.rb +1 -1
  35. data/lib/cosmos/tools/data_viewer/data_viewer_component.rb +2 -2
  36. data/lib/cosmos/tools/handbook_creator/handbook_creator.rb +2 -2
  37. data/lib/cosmos/tools/handbook_creator/handbook_creator_config.rb +0 -2
  38. data/lib/cosmos/tools/limits_monitor/limits_monitor.rb +1 -1
  39. data/lib/cosmos/tools/replay/replay.rb +2 -2
  40. data/lib/cosmos/tools/script_runner/script_audit.rb +1 -1
  41. data/lib/cosmos/tools/script_runner/script_runner.rb +1 -1
  42. data/lib/cosmos/tools/script_runner/script_runner_frame.rb +3 -7
  43. data/lib/cosmos/tools/table_manager/table_config.rb +1 -1
  44. data/lib/cosmos/tools/test_runner/results_writer.rb +1 -1
  45. data/lib/cosmos/tools/test_runner/test_runner.rb +2 -2
  46. data/lib/cosmos/tools/tlm_extractor/tlm_extractor.rb +2 -1
  47. data/lib/cosmos/tools/tlm_extractor/tlm_extractor_processor.rb +1 -1
  48. data/lib/cosmos/tools/tlm_grapher/data_object_adders/xy_data_object_adder.rb +1 -0
  49. data/lib/cosmos/tools/tlm_grapher/data_object_editors/housekeeping_data_object_editor.rb +1 -0
  50. data/lib/cosmos/tools/tlm_grapher/data_object_editors/xy_data_object_editor.rb +1 -0
  51. data/lib/cosmos/tools/tlm_grapher/tabbed_plots/overview_tabbed_plots.rb +3 -3
  52. data/lib/cosmos/tools/tlm_viewer/tlm_viewer.rb +1 -3
  53. data/lib/cosmos/top_level.rb +2 -6
  54. data/lib/cosmos/utilities/ruby_lex_utils.rb +1 -1
  55. data/lib/cosmos/version.rb +5 -5
  56. data/lib/cosmos/win32/win32_main.rb +11 -7
  57. data/spec/ccsds/ccsds_packet_spec.rb +28 -28
  58. data/spec/ccsds/ccsds_parser_spec.rb +27 -27
  59. data/spec/config/config_parser_spec.rb +88 -88
  60. data/spec/conversions/conversion_spec.rb +3 -3
  61. data/spec/conversions/generic_conversion_spec.rb +9 -9
  62. data/spec/conversions/new_packet_log_conversion_spec.rb +4 -4
  63. data/spec/conversions/polynomial_conversion_spec.rb +7 -7
  64. data/spec/conversions/processor_conversion_spec.rb +9 -9
  65. data/spec/conversions/received_count_conversion_spec.rb +7 -7
  66. data/spec/conversions/received_time_formatted_conversion_spec.rb +9 -9
  67. data/spec/conversions/received_time_seconds_conversion_spec.rb +9 -9
  68. data/spec/conversions/segmented_polynomial_conversion_spec.rb +11 -11
  69. data/spec/conversions/unix_time_formatted_conversion_spec.rb +13 -13
  70. data/spec/conversions/unix_time_seconds_conversion_spec.rb +13 -13
  71. data/spec/core_ext/array_spec.rb +76 -76
  72. data/spec/core_ext/class_spec.rb +3 -3
  73. data/spec/core_ext/cosmos_io_spec.rb +16 -16
  74. data/spec/core_ext/exception_spec.rb +19 -19
  75. data/spec/core_ext/file_spec.rb +16 -16
  76. data/spec/core_ext/hash_spec.rb +3 -3
  77. data/spec/core_ext/io_spec.rb +2 -2
  78. data/spec/core_ext/kernel_spec.rb +2 -2
  79. data/spec/core_ext/math_spec.rb +43 -43
  80. data/spec/core_ext/matrix_spec.rb +22 -22
  81. data/spec/core_ext/objectspace_spec.rb +6 -6
  82. data/spec/core_ext/range_spec.rb +2 -2
  83. data/spec/core_ext/socket_spec.rb +4 -4
  84. data/spec/core_ext/string_spec.rb +67 -67
  85. data/spec/core_ext/stringio_spec.rb +2 -2
  86. data/spec/core_ext/time_spec.rb +82 -82
  87. data/spec/gui/line_graph/line_clip_spec.rb +34 -34
  88. data/spec/interfaces/interface_spec.rb +46 -46
  89. data/spec/interfaces/linc_interface_spec.rb +26 -26
  90. data/spec/interfaces/serial_interface_spec.rb +16 -16
  91. data/spec/interfaces/simulated_target_interface_spec.rb +21 -21
  92. data/spec/interfaces/stream_interface_spec.rb +22 -22
  93. data/spec/interfaces/tcpip_client_interface_spec.rb +14 -14
  94. data/spec/interfaces/tcpip_server_interface_spec.rb +41 -41
  95. data/spec/interfaces/udp_interface_spec.rb +46 -46
  96. data/spec/io/buffered_file_spec.rb +50 -50
  97. data/spec/io/io_multiplexer_spec.rb +9 -9
  98. data/spec/io/json_drb_object_spec.rb +7 -7
  99. data/spec/io/json_drb_spec.rb +55 -55
  100. data/spec/io/json_rpc_spec.rb +68 -68
  101. data/spec/io/raw_logger_pair_spec.rb +28 -28
  102. data/spec/io/raw_logger_spec.rb +22 -22
  103. data/spec/io/serial_driver_spec.rb +3 -3
  104. data/spec/io/stderr_spec.rb +2 -2
  105. data/spec/io/stdout_spec.rb +2 -2
  106. data/spec/io/tcpip_server_spec.rb +62 -62
  107. data/spec/io/udp_sockets_spec.rb +19 -19
  108. data/spec/io/win32_serial_driver_spec.rb +10 -10
  109. data/spec/packet_logs/meta_packet_log_writer_spec.rb +32 -32
  110. data/spec/packet_logs/packet_log_reader_spec.rb +138 -138
  111. data/spec/packet_logs/packet_log_writer_pair_spec.rb +3 -3
  112. data/spec/packet_logs/packet_log_writer_spec.rb +26 -26
  113. data/spec/packets/binary_accessor_spec.rb +672 -672
  114. data/spec/packets/commands_spec.rb +123 -123
  115. data/spec/packets/limits_response_spec.rb +1 -1
  116. data/spec/packets/limits_spec.rb +69 -69
  117. data/spec/packets/packet_config_spec.rb +93 -93
  118. data/spec/packets/packet_item_limits_spec.rb +46 -46
  119. data/spec/packets/packet_item_spec.rb +108 -108
  120. data/spec/packets/packet_spec.rb +364 -348
  121. data/spec/packets/parsers/format_string_parser_spec.rb +13 -13
  122. data/spec/packets/parsers/limits_parser_spec.rb +8 -8
  123. data/spec/packets/parsers/limits_response_parser_spec.rb +9 -9
  124. data/spec/packets/parsers/macro_parser_spec.rb +34 -6
  125. data/spec/packets/parsers/packet_parser_spec.rb +6 -6
  126. data/spec/packets/parsers/processor_parser_spec.rb +7 -7
  127. data/spec/packets/parsers/state_parser_spec.rb +23 -23
  128. data/spec/packets/structure_item_spec.rb +62 -62
  129. data/spec/packets/structure_spec.rb +183 -183
  130. data/spec/packets/telemetry_spec.rb +174 -174
  131. data/spec/processors/new_packet_log_processor_spec.rb +4 -4
  132. data/spec/processors/processor_spec.rb +9 -9
  133. data/spec/processors/statistics_processor_spec.rb +21 -21
  134. data/spec/processors/watermark_processor_spec.rb +12 -12
  135. data/spec/script/script_spec.rb +158 -158
  136. data/spec/spec_helper.rb +44 -13
  137. data/spec/streams/burst_stream_protocol_spec.rb +8 -8
  138. data/spec/streams/fixed_stream_protocol_spec.rb +26 -26
  139. data/spec/streams/length_stream_protocol_spec.rb +27 -27
  140. data/spec/streams/preidentified_stream_protocol_spec.rb +25 -25
  141. data/spec/streams/serial_stream_spec.rb +19 -19
  142. data/spec/streams/stream_protocol_spec.rb +52 -52
  143. data/spec/streams/stream_spec.rb +1 -1
  144. data/spec/streams/tcpip_client_stream_spec.rb +7 -7
  145. data/spec/streams/tcpip_socket_stream_spec.rb +84 -49
  146. data/spec/streams/template_stream_protocol_spec.rb +17 -17
  147. data/spec/streams/terminated_stream_protocol_spec.rb +19 -19
  148. data/spec/system/system_spec.rb +95 -95
  149. data/spec/system/target_spec.rb +32 -32
  150. data/spec/tools/cmd_tlm_server/api_spec.rb +386 -386
  151. data/spec/tools/cmd_tlm_server/background_task_spec.rb +3 -3
  152. data/spec/tools/cmd_tlm_server/background_tasks_spec.rb +8 -8
  153. data/spec/tools/cmd_tlm_server/cmd_tlm_server_config_spec.rb +57 -57
  154. data/spec/tools/cmd_tlm_server/cmd_tlm_server_spec.rb +85 -85
  155. data/spec/tools/cmd_tlm_server/commanding_spec.rb +11 -11
  156. data/spec/tools/cmd_tlm_server/connections_spec.rb +23 -23
  157. data/spec/tools/cmd_tlm_server/interface_thread_spec.rb +57 -57
  158. data/spec/tools/cmd_tlm_server/interfaces_spec.rb +32 -32
  159. data/spec/tools/cmd_tlm_server/packet_logging_spec.rb +17 -17
  160. data/spec/tools/cmd_tlm_server/router_thread_spec.rb +15 -15
  161. data/spec/tools/cmd_tlm_server/routers_spec.rb +36 -36
  162. data/spec/top_level/top_level_spec.rb +60 -60
  163. data/spec/utilities/crc_spec.rb +6 -6
  164. data/spec/utilities/csv_spec.rb +13 -13
  165. data/spec/utilities/logger_spec.rb +20 -20
  166. data/spec/utilities/message_log_spec.rb +13 -13
  167. data/spec/utilities/quaternion_spec.rb +30 -30
  168. data/spec/utilities/ruby_lex_utils_spec.rb +14 -14
  169. data/test/benchmarks/binary_accessor_benchmark.rb +14 -0
  170. data/test/benchmarks/gsub_benchmark.rb +114 -0
  171. data/test/performance/PACKETS.bat +1 -0
  172. data/test/performance/Rakefile +77 -0
  173. data/test/performance/THREADS.bat +1 -0
  174. data/test/performance/config/data/attitude.bin +0 -0
  175. data/test/performance/config/data/crc.txt +206 -0
  176. data/test/performance/config/data/diamond.STL +58 -0
  177. data/test/performance/config/data/groundoff.gif +0 -0
  178. data/test/performance/config/data/groundon.gif +0 -0
  179. data/test/performance/config/data/hselectoff.gif +0 -0
  180. data/test/performance/config/data/hselecton.gif +0 -0
  181. data/test/performance/config/data/hswitchoff.gif +0 -0
  182. data/test/performance/config/data/hswitchon.gif +0 -0
  183. data/test/performance/config/data/meta_init.txt +4 -0
  184. data/test/performance/config/data/position.bin +0 -0
  185. data/test/performance/config/data/poweroff.gif +0 -0
  186. data/test/performance/config/data/poweron.gif +0 -0
  187. data/test/performance/config/data/satellite.gif +0 -0
  188. data/test/performance/config/data/tada.wav +0 -0
  189. data/test/performance/config/data/vswitchoff.gif +0 -0
  190. data/test/performance/config/data/vswitchon.gif +0 -0
  191. data/test/performance/config/system/system_packets.txt +39 -0
  192. data/test/performance/config/system/system_threads.txt +59 -0
  193. data/test/performance/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt +41 -0
  194. data/test/performance/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +15 -0
  195. data/test/performance/config/targets/COSMOS/cmd_tlm_server.txt +6 -0
  196. data/test/performance/config/targets/COSMOS/screens/limits_change.txt +20 -0
  197. data/test/performance/config/targets/COSMOS/screens/version.txt +19 -0
  198. data/test/performance/config/targets/COSMOS/target.txt +11 -0
  199. data/test/performance/config/targets/EXAMPLE/cmd_tlm/example_cmds.txt +17 -0
  200. data/test/performance/config/targets/EXAMPLE/cmd_tlm/example_tlm.txt +18 -0
  201. data/test/performance/config/targets/EXAMPLE/cmd_tlm_server.txt +6 -0
  202. data/test/performance/config/targets/EXAMPLE/lib/example_interface.rb +22 -0
  203. data/test/performance/config/targets/EXAMPLE/target.txt +7 -0
  204. data/test/performance/config/targets/SYSTEM/screens/status.txt +12 -0
  205. data/test/performance/config/tools/cmd_tlm_server/cmd_tlm_server_packets.txt +34 -0
  206. data/test/performance/config/tools/cmd_tlm_server/cmd_tlm_server_threads.txt +68 -0
  207. data/test/performance/config/tools/data_viewer/data_viewer.txt +11 -0
  208. data/test/performance/config/tools/handbook_creator/default_toc.xsl +59 -0
  209. data/test/performance/config/tools/handbook_creator/handbook_creator.txt +66 -0
  210. data/test/performance/config/tools/handbook_creator/templates/command_packets.html.erb +86 -0
  211. data/test/performance/config/tools/handbook_creator/templates/command_toc.html.erb +38 -0
  212. data/test/performance/config/tools/handbook_creator/templates/footer.html.erb +9 -0
  213. data/test/performance/config/tools/handbook_creator/templates/header.html.erb +25 -0
  214. data/test/performance/config/tools/handbook_creator/templates/limits_groups.html.erb +13 -0
  215. data/test/performance/config/tools/handbook_creator/templates/nav.html.erb +27 -0
  216. data/test/performance/config/tools/handbook_creator/templates/overview.html.erb +1 -0
  217. data/test/performance/config/tools/handbook_creator/templates/pdf_cover.html.erb +23 -0
  218. data/test/performance/config/tools/handbook_creator/templates/pdf_footer.html.erb +33 -0
  219. data/test/performance/config/tools/handbook_creator/templates/pdf_header.html.erb +41 -0
  220. data/test/performance/config/tools/handbook_creator/templates/telemetry_packets.html.erb +80 -0
  221. data/test/performance/config/tools/handbook_creator/templates/telemetry_toc.html.erb +38 -0
  222. data/test/performance/config/tools/handbook_creator/templates/title.html.erb +1 -0
  223. data/test/performance/config/tools/launcher/launcher_packets.txt +29 -0
  224. data/test/performance/config/tools/launcher/launcher_threads.txt +70 -0
  225. data/test/performance/config/tools/limits_monitor/README.txt +1 -0
  226. data/test/performance/config/tools/opengl_builder/README.txt +1 -0
  227. data/test/performance/config/tools/script_runner/script_runner.txt +3 -0
  228. data/test/performance/config/tools/table_manager/ConfigTables_def.txt +8 -0
  229. data/test/performance/config/tools/table_manager/ExampleTableDefinition.txt +24 -0
  230. data/test/performance/config/tools/table_manager/MCConfigurationTable_fsw1_def.txt +25 -0
  231. data/test/performance/config/tools/table_manager/MCConfigurationTable_fsw2_def.txt +25 -0
  232. data/test/performance/config/tools/table_manager/PPSSelectionTable_def.txt +8 -0
  233. data/test/performance/config/tools/table_manager/TLMMonitoringTable_def.txt +248 -0
  234. data/test/performance/config/tools/test_runner/test_runner.txt +17 -0
  235. data/test/performance/config/tools/tlm_extractor/tlm_extractor.txt +13 -0
  236. data/test/performance/config/tools/tlm_extractor/tlm_extractor2.txt +2 -0
  237. data/test/performance/config/tools/tlm_extractor/tlm_extractor3.txt +2 -0
  238. data/test/performance/config/tools/tlm_extractor/tlm_extractor4.txt +2 -0
  239. data/test/performance/config/tools/tlm_grapher/README.txt +1 -0
  240. data/test/performance/config/tools/tlm_viewer/tlm_viewer.txt +41 -0
  241. data/test/performance/lib/example_background_task.rb +57 -0
  242. data/test/performance/lib/example_target.rb +120 -0
  243. data/test/performance/lib/scpi_target.rb +74 -0
  244. data/test/performance/lib/user_version.rb +3 -0
  245. data/test/performance/outputs/handbooks/README.txt +1 -0
  246. data/test/performance/outputs/logs/README.txt +1 -0
  247. data/test/performance/outputs/saved_config/README.txt +1 -0
  248. data/test/performance/outputs/tables/README.txt +1 -0
  249. data/test/performance/outputs/tmp/README.txt +1 -0
  250. data/test/performance/procedures/checks.rb +11 -0
  251. data/test/performance/procedures/clear_util.rb +7 -0
  252. data/test/performance/procedures/collect.rb +18 -0
  253. data/test/performance/procedures/collect_util.rb +14 -0
  254. data/test/performance/procedures/cosmos_api_test.rb +293 -0
  255. data/test/performance/procedures/disconnect.rb +29 -0
  256. data/test/performance/procedures/example_test.rb +182 -0
  257. data/test/performance/procedures/plot_test.rb +8 -0
  258. data/test/performance/procedures/procedure.rb +3 -0
  259. data/test/performance/procedures/run_example_test.rb +3 -0
  260. data/test/performance/procedures/test.rb +51 -0
  261. data/test/performance/tools/CmdExtractor +14 -0
  262. data/test/performance/tools/CmdExtractor.bat +59 -0
  263. data/test/performance/tools/CmdSender +14 -0
  264. data/test/performance/tools/CmdSender.bat +59 -0
  265. data/test/performance/tools/CmdTlmServer +16 -0
  266. data/test/performance/tools/CmdTlmServer.bat +59 -0
  267. data/test/performance/tools/CmdTlmServerMemProf +20 -0
  268. data/test/performance/tools/CmdTlmServerMemProf.bat +59 -0
  269. data/test/performance/tools/DataViewer +14 -0
  270. data/test/performance/tools/DataViewer.bat +59 -0
  271. data/test/performance/tools/ExampleTarget +14 -0
  272. data/test/performance/tools/ExampleTarget.bat +59 -0
  273. data/test/performance/tools/HandbookCreator +14 -0
  274. data/test/performance/tools/HandbookCreator.bat +61 -0
  275. data/test/performance/tools/Launcher +14 -0
  276. data/test/performance/tools/Launcher.bat +59 -0
  277. data/test/performance/tools/LimitsMonitor +14 -0
  278. data/test/performance/tools/LimitsMonitor.bat +59 -0
  279. data/test/performance/tools/OpenGLBuilder +14 -0
  280. data/test/performance/tools/OpenGLBuilder.bat +59 -0
  281. data/test/performance/tools/PacketViewer +14 -0
  282. data/test/performance/tools/PacketViewer.bat +59 -0
  283. data/test/performance/tools/Replay +14 -0
  284. data/test/performance/tools/Replay.bat +59 -0
  285. data/test/performance/tools/ScpiTarget +14 -0
  286. data/test/performance/tools/ScpiTarget.bat +59 -0
  287. data/test/performance/tools/ScriptRunner +14 -0
  288. data/test/performance/tools/ScriptRunner.bat +59 -0
  289. data/test/performance/tools/TableManager +14 -0
  290. data/test/performance/tools/TableManager.bat +59 -0
  291. data/test/performance/tools/TestRunner +14 -0
  292. data/test/performance/tools/TestRunner.bat +59 -0
  293. data/test/performance/tools/TlmExtractor +14 -0
  294. data/test/performance/tools/TlmExtractor.bat +59 -0
  295. data/test/performance/tools/TlmGrapher +14 -0
  296. data/test/performance/tools/TlmGrapher.bat +59 -0
  297. data/test/performance/tools/TlmViewer +14 -0
  298. data/test/performance/tools/TlmViewer.bat +59 -0
  299. data/test/performance/tools/mac/CmdExtractor.app/Contents/Info.plist +38 -0
  300. data/test/performance/tools/mac/CmdExtractor.app/Contents/MacOS/CmdExtractor.rb +15 -0
  301. data/test/performance/tools/mac/CmdExtractor.app/Contents/MacOS/main.sh +6 -0
  302. data/test/performance/tools/mac/CmdExtractor.app/Contents/Resources/appIcon.icns +0 -0
  303. data/test/performance/tools/mac/CmdSender.app/Contents/Info.plist +38 -0
  304. data/test/performance/tools/mac/CmdSender.app/Contents/MacOS/CmdSender.rb +15 -0
  305. data/test/performance/tools/mac/CmdSender.app/Contents/MacOS/main.sh +6 -0
  306. data/test/performance/tools/mac/CmdSender.app/Contents/Resources/appIcon.icns +0 -0
  307. data/test/performance/tools/mac/CmdTlmServer.app/Contents/Info.plist +38 -0
  308. data/test/performance/tools/mac/CmdTlmServer.app/Contents/MacOS/CmdTlmServer.rb +15 -0
  309. data/test/performance/tools/mac/CmdTlmServer.app/Contents/MacOS/main.sh +6 -0
  310. data/test/performance/tools/mac/CmdTlmServer.app/Contents/Resources/appIcon.icns +0 -0
  311. data/test/performance/tools/mac/DataViewer.app/Contents/Info.plist +38 -0
  312. data/test/performance/tools/mac/DataViewer.app/Contents/MacOS/DataViewer.rb +15 -0
  313. data/test/performance/tools/mac/DataViewer.app/Contents/MacOS/main.sh +6 -0
  314. data/test/performance/tools/mac/DataViewer.app/Contents/Resources/appIcon.icns +0 -0
  315. data/test/performance/tools/mac/HandbookCreator.app/Contents/Info.plist +38 -0
  316. data/test/performance/tools/mac/HandbookCreator.app/Contents/MacOS/HandbookCreator.rb +15 -0
  317. data/test/performance/tools/mac/HandbookCreator.app/Contents/MacOS/main.sh +6 -0
  318. data/test/performance/tools/mac/HandbookCreator.app/Contents/Resources/appIcon.icns +0 -0
  319. data/test/performance/tools/mac/Launcher.app/Contents/Info.plist +38 -0
  320. data/test/performance/tools/mac/Launcher.app/Contents/MacOS/Launcher.rb +15 -0
  321. data/test/performance/tools/mac/Launcher.app/Contents/MacOS/main.sh +6 -0
  322. data/test/performance/tools/mac/Launcher.app/Contents/Resources/appIcon.icns +0 -0
  323. data/test/performance/tools/mac/LimitsMonitor.app/Contents/Info.plist +38 -0
  324. data/test/performance/tools/mac/LimitsMonitor.app/Contents/MacOS/LimitsMonitor.rb +15 -0
  325. data/test/performance/tools/mac/LimitsMonitor.app/Contents/MacOS/main.sh +6 -0
  326. data/test/performance/tools/mac/LimitsMonitor.app/Contents/Resources/appIcon.icns +0 -0
  327. data/test/performance/tools/mac/OpenGLBuilder.app/Contents/Info.plist +38 -0
  328. data/test/performance/tools/mac/OpenGLBuilder.app/Contents/MacOS/OpenGLBuilder.rb +15 -0
  329. data/test/performance/tools/mac/OpenGLBuilder.app/Contents/MacOS/main.sh +6 -0
  330. data/test/performance/tools/mac/OpenGLBuilder.app/Contents/Resources/appIcon.icns +0 -0
  331. data/test/performance/tools/mac/PacketViewer.app/Contents/Info.plist +38 -0
  332. data/test/performance/tools/mac/PacketViewer.app/Contents/MacOS/PacketViewer.rb +15 -0
  333. data/test/performance/tools/mac/PacketViewer.app/Contents/MacOS/main.sh +6 -0
  334. data/test/performance/tools/mac/PacketViewer.app/Contents/Resources/appIcon.icns +0 -0
  335. data/test/performance/tools/mac/Replay.app/Contents/Info.plist +38 -0
  336. data/test/performance/tools/mac/Replay.app/Contents/MacOS/Replay.rb +15 -0
  337. data/test/performance/tools/mac/Replay.app/Contents/MacOS/main.sh +6 -0
  338. data/test/performance/tools/mac/Replay.app/Contents/Resources/appIcon.icns +0 -0
  339. data/test/performance/tools/mac/ScriptRunner.app/Contents/Info.plist +38 -0
  340. data/test/performance/tools/mac/ScriptRunner.app/Contents/MacOS/ScriptRunner.rb +15 -0
  341. data/test/performance/tools/mac/ScriptRunner.app/Contents/MacOS/main.sh +6 -0
  342. data/test/performance/tools/mac/ScriptRunner.app/Contents/Resources/appIcon.icns +0 -0
  343. data/test/performance/tools/mac/TableManager.app/Contents/Info.plist +38 -0
  344. data/test/performance/tools/mac/TableManager.app/Contents/MacOS/TableManager.rb +15 -0
  345. data/test/performance/tools/mac/TableManager.app/Contents/MacOS/main.sh +6 -0
  346. data/test/performance/tools/mac/TableManager.app/Contents/Resources/appIcon.icns +0 -0
  347. data/test/performance/tools/mac/TestRunner.app/Contents/Info.plist +38 -0
  348. data/test/performance/tools/mac/TestRunner.app/Contents/MacOS/TestRunner.rb +15 -0
  349. data/test/performance/tools/mac/TestRunner.app/Contents/MacOS/main.sh +6 -0
  350. data/test/performance/tools/mac/TestRunner.app/Contents/Resources/appIcon.icns +0 -0
  351. data/test/performance/tools/mac/TlmExtractor.app/Contents/Info.plist +38 -0
  352. data/test/performance/tools/mac/TlmExtractor.app/Contents/MacOS/TlmExtractor.rb +15 -0
  353. data/test/performance/tools/mac/TlmExtractor.app/Contents/MacOS/main.sh +6 -0
  354. data/test/performance/tools/mac/TlmExtractor.app/Contents/Resources/appIcon.icns +0 -0
  355. data/test/performance/tools/mac/TlmGrapher.app/Contents/Info.plist +38 -0
  356. data/test/performance/tools/mac/TlmGrapher.app/Contents/MacOS/TlmGrapher.rb +15 -0
  357. data/test/performance/tools/mac/TlmGrapher.app/Contents/MacOS/main.sh +6 -0
  358. data/test/performance/tools/mac/TlmGrapher.app/Contents/Resources/appIcon.icns +0 -0
  359. data/test/performance/tools/mac/TlmViewer.app/Contents/Info.plist +38 -0
  360. data/test/performance/tools/mac/TlmViewer.app/Contents/MacOS/TlmViewer.rb +15 -0
  361. data/test/performance/tools/mac/TlmViewer.app/Contents/MacOS/main.sh +6 -0
  362. data/test/performance/tools/mac/TlmViewer.app/Contents/Resources/appIcon.icns +0 -0
  363. data/test/performance/userpath.txt +1 -0
  364. metadata +197 -2
@@ -35,16 +35,16 @@ module Cosmos
35
35
  end
36
36
 
37
37
  describe "initialize, self.instance" do
38
- it "should create the single instance of the CTS" do
38
+ it "creates the single instance of the CTS" do
39
39
  cts = CmdTlmServer.new
40
- CmdTlmServer.instance.should eql cts
41
- CmdTlmServer.background_tasks.should be_a BackgroundTasks
42
- CmdTlmServer.commanding.should be_a Commanding
43
- CmdTlmServer.interfaces.should be_a Interfaces
44
- CmdTlmServer.packet_logging.should be_a PacketLogging
45
- CmdTlmServer.routers.should be_a Routers
46
- CmdTlmServer.message_log.should be_a MessageLog
47
- CmdTlmServer.json_drb.should be_a JsonDRb
40
+ expect(CmdTlmServer.instance).to eql cts
41
+ expect(CmdTlmServer.background_tasks).to be_a BackgroundTasks
42
+ expect(CmdTlmServer.commanding).to be_a Commanding
43
+ expect(CmdTlmServer.interfaces).to be_a Interfaces
44
+ expect(CmdTlmServer.packet_logging).to be_a PacketLogging
45
+ expect(CmdTlmServer.routers).to be_a Routers
46
+ expect(CmdTlmServer.message_log).to be_a MessageLog
47
+ expect(CmdTlmServer.json_drb).to be_a JsonDRb
48
48
 
49
49
  # Verify we can't start another CTS
50
50
  expect { CmdTlmServer.new }.to raise_error(FatalError, /Error starting JsonDRb on port 7777/)
@@ -52,31 +52,31 @@ module Cosmos
52
52
  sleep 0.2
53
53
  end
54
54
 
55
- it "should create the CTS in production mode" do
55
+ it "creates the CTS in production mode" do
56
56
  # Production mode means we start logging
57
57
  expect_any_instance_of(PacketLogging).to receive(:start)
58
58
  cts = CmdTlmServer.new('cmd_tlm_server.txt', true)
59
59
  # Verify we disabled the ability to stop logging
60
- CmdTlmServer.json_drb.method_whitelist.should include('start_logging')
61
- CmdTlmServer.json_drb.method_whitelist.should_not include('stop_logging')
62
- CmdTlmServer.json_drb.method_whitelist.should_not include('stop_cmd_log')
63
- CmdTlmServer.json_drb.method_whitelist.should_not include('stop_tlm_log')
60
+ expect(CmdTlmServer.json_drb.method_whitelist).to include('start_logging')
61
+ expect(CmdTlmServer.json_drb.method_whitelist).not_to include('stop_logging')
62
+ expect(CmdTlmServer.json_drb.method_whitelist).not_to include('stop_cmd_log')
63
+ expect(CmdTlmServer.json_drb.method_whitelist).not_to include('stop_tlm_log')
64
64
  cts.stop
65
65
  sleep 0.2
66
66
  end
67
67
  end
68
68
 
69
69
  describe "start" do
70
- it "should create the CTS in production mode" do
70
+ it "creates the CTS in production mode" do
71
71
  # Production mode means we start logging
72
72
  cts = CmdTlmServer.new
73
- CmdTlmServer.json_drb.method_whitelist.should include('start_logging')
74
- CmdTlmServer.json_drb.method_whitelist.should include('stop_logging')
75
- CmdTlmServer.json_drb.method_whitelist.should include('stop_cmd_log')
76
- CmdTlmServer.json_drb.method_whitelist.should include('stop_tlm_log')
73
+ expect(CmdTlmServer.json_drb.method_whitelist).to include('start_logging')
74
+ expect(CmdTlmServer.json_drb.method_whitelist).to include('stop_logging')
75
+ expect(CmdTlmServer.json_drb.method_whitelist).to include('stop_cmd_log')
76
+ expect(CmdTlmServer.json_drb.method_whitelist).to include('stop_tlm_log')
77
77
  threads = Thread.list.length
78
78
  cts.start # Call start again ... it should do nothing
79
- Thread.list.length.should eql threads
79
+ expect(Thread.list.length).to eql threads
80
80
  cts.stop
81
81
  sleep 0.2
82
82
 
@@ -84,15 +84,15 @@ module Cosmos
84
84
  # Now start the server in production mode
85
85
  cts.start(true)
86
86
  # Verify we disabled the ability to stop logging
87
- CmdTlmServer.json_drb.method_whitelist.should include('start_logging')
88
- CmdTlmServer.json_drb.method_whitelist.should_not include('stop_logging')
89
- CmdTlmServer.json_drb.method_whitelist.should_not include('stop_cmd_log')
90
- CmdTlmServer.json_drb.method_whitelist.should_not include('stop_tlm_log')
87
+ expect(CmdTlmServer.json_drb.method_whitelist).to include('start_logging')
88
+ expect(CmdTlmServer.json_drb.method_whitelist).not_to include('stop_logging')
89
+ expect(CmdTlmServer.json_drb.method_whitelist).not_to include('stop_cmd_log')
90
+ expect(CmdTlmServer.json_drb.method_whitelist).not_to include('stop_tlm_log')
91
91
  cts.stop
92
92
  sleep 0.2
93
93
  end
94
94
 
95
- it "should monitor the staleness thread" do
95
+ it "monitors the staleness thread" do
96
96
  capture_io do |stdout|
97
97
  # Production mode means we start logging
98
98
  allow(System).to receive_message_chain(:telemetry,:limits_change_callback=)
@@ -103,53 +103,53 @@ module Cosmos
103
103
  cts.stop
104
104
  sleep 0.2
105
105
 
106
- stdout.string.should match "Staleness Monitor thread unexpectedly died"
106
+ expect(stdout.string).to match "Staleness Monitor thread unexpectedly died"
107
107
  end
108
108
  end
109
109
  end
110
110
 
111
111
  describe "limits_change_callback" do
112
- it "should log the change according to the state" do
112
+ it "logs the change according to the state" do
113
113
  capture_io do |stdout|
114
114
  cts = CmdTlmServer.new
115
115
  pkt = Packet.new("TGT","PKT")
116
116
  pi = PacketItem.new("TEST", 0, 32, :UINT, :BIG_ENDIAN, nil)
117
117
  cts.limits_change_callback(pkt, pi, :STALE, 100, true)
118
- stdout.string.should match "TGT PKT TEST = 100 is UNKNOWN"
118
+ expect(stdout.string).to match "TGT PKT TEST = 100 is UNKNOWN"
119
119
 
120
120
  pi.limits.state = :BLUE
121
121
  cts.limits_change_callback(pkt, pi, :STALE, 100, true)
122
- stdout.string.should match "<B>TGT PKT TEST = 100 is BLUE"
122
+ expect(stdout.string).to match "<B>TGT PKT TEST = 100 is BLUE"
123
123
 
124
124
  pi.limits.state = :GREEN
125
125
  cts.limits_change_callback(pkt, pi, :STALE, 100, true)
126
- stdout.string.should match "<G>TGT PKT TEST = 100 is GREEN"
126
+ expect(stdout.string).to match "<G>TGT PKT TEST = 100 is GREEN"
127
127
 
128
128
  pi.limits.state = :YELLOW
129
129
  cts.limits_change_callback(pkt, pi, :STALE, 100, true)
130
- stdout.string.should match "<Y>TGT PKT TEST = 100 is YELLOW"
130
+ expect(stdout.string).to match "<Y>TGT PKT TEST = 100 is YELLOW"
131
131
 
132
132
  pi.limits.state = :RED
133
133
  cts.limits_change_callback(pkt, pi, :STALE, 100, true)
134
- stdout.string.should match "<R>TGT PKT TEST = 100 is RED"
134
+ expect(stdout.string).to match "<R>TGT PKT TEST = 100 is RED"
135
135
 
136
136
  cts.stop
137
137
  sleep 0.2
138
138
  end
139
139
  end
140
140
 
141
- it "should call the limits response" do
141
+ it "calls the limits response" do
142
142
  cts = CmdTlmServer.new
143
143
  pkt = Packet.new("TGT","PKT")
144
144
  pi = PacketItem.new("TEST", 0, 32, :UINT, :BIG_ENDIAN, nil)
145
145
  lr = LimitsResponse.new
146
146
  pi.limits.response = lr
147
147
  expect(pi.limits.response).to receive(:call) do |tgt, pkt, item, old_state, state|
148
- tgt.should eql "TGT"
149
- pkt.should eql "PKT"
150
- item.name.should eql "TEST"
151
- old_state.should eql :YELLOW
152
- state.should eql :GREEN
148
+ expect(tgt).to eql "TGT"
149
+ expect(pkt).to eql "PKT"
150
+ expect(item.name).to eql "TEST"
151
+ expect(old_state).to eql :YELLOW
152
+ expect(state).to eql :GREEN
153
153
  end
154
154
  pi.limits.state = :GREEN
155
155
 
@@ -159,7 +159,7 @@ module Cosmos
159
159
  sleep 0.2
160
160
  end
161
161
 
162
- it "should log limits response errors" do
162
+ it "logs limits response errors" do
163
163
  capture_io do |stdout|
164
164
  cts = CmdTlmServer.new
165
165
  pkt = Packet.new("TGT","PKT")
@@ -172,7 +172,7 @@ module Cosmos
172
172
  cts.limits_change_callback(pkt, pi, :YELLOW, 100, true)
173
173
  sleep 0.1
174
174
 
175
- stdout.string.should match "TGT PKT TEST Limits Response Exception!"
175
+ expect(stdout.string).to match "TGT PKT TEST Limits Response Exception!"
176
176
  cts.stop
177
177
  sleep 0.2
178
178
  end
@@ -180,7 +180,7 @@ module Cosmos
180
180
  end
181
181
 
182
182
  describe "self.subscribe_limits_events" do
183
- it "should subscribe to limits events" do
183
+ it "subscribes to limits events" do
184
184
  cts = CmdTlmServer.new
185
185
  pkt = Packet.new("TGT","PKT")
186
186
  pi = PacketItem.new("TEST", 0, 32, :UINT, :BIG_ENDIAN, nil)
@@ -195,28 +195,28 @@ module Cosmos
195
195
  # Get and check the first one
196
196
  type,data = CmdTlmServer.get_limits_event(id)
197
197
  tgt,pkt,item,old_state,state = data # split the data array
198
- type.should eql :LIMITS_CHANGE
199
- tgt.should eql "TGT"
200
- pkt.should eql "PKT"
201
- item.should eql "TEST"
202
- old_state.should eql :STALE
203
- state.should eql :GREEN
198
+ expect(type).to eql :LIMITS_CHANGE
199
+ expect(tgt).to eql "TGT"
200
+ expect(pkt).to eql "PKT"
201
+ expect(item).to eql "TEST"
202
+ expect(old_state).to eql :STALE
203
+ expect(state).to eql :GREEN
204
204
 
205
205
  # Get and check the second one
206
206
  type,data = CmdTlmServer.get_limits_event(id)
207
207
  tgt,pkt,item,old_state,state = data # split the data array
208
- type.should eql :LIMITS_CHANGE
209
- tgt.should eql "TGT"
210
- pkt.should eql "PKT"
211
- item.should eql "TEST"
212
- old_state.should eql :GREEN
213
- state.should eql :YELLOW
208
+ expect(type).to eql :LIMITS_CHANGE
209
+ expect(tgt).to eql "TGT"
210
+ expect(pkt).to eql "PKT"
211
+ expect(item).to eql "TEST"
212
+ expect(old_state).to eql :GREEN
213
+ expect(state).to eql :YELLOW
214
214
 
215
215
  cts.stop
216
216
  sleep 0.2
217
217
  end
218
218
 
219
- it "should delete queues after the max events is reached" do
219
+ it "deletes queues after the max events is reached" do
220
220
  cts = CmdTlmServer.new
221
221
  pkt = Packet.new("TGT","PKT")
222
222
  pi = PacketItem.new("TEST", 0, 32, :UINT, :BIG_ENDIAN, nil)
@@ -244,7 +244,7 @@ module Cosmos
244
244
  end
245
245
 
246
246
  describe "self.unsubscribe_limits_events" do
247
- it "should unsubscribe to limits events" do
247
+ it "unsubscribes to limits events" do
248
248
  cts = CmdTlmServer.new
249
249
  pkt = Packet.new("TGT","PKT")
250
250
  pi = PacketItem.new("TEST", 0, 32, :UINT, :BIG_ENDIAN, nil)
@@ -269,7 +269,7 @@ module Cosmos
269
269
  end
270
270
 
271
271
  describe "self.subscribe_packet_data" do
272
- it "should subscribe to packets" do
272
+ it "subscribes to packets" do
273
273
  version = System.telemetry.packet("COSMOS","VERSION")
274
274
  allow_any_instance_of(Interface).to receive(:read) do
275
275
  sleep 0.05
@@ -282,12 +282,12 @@ module Cosmos
282
282
  # Get and check the packet
283
283
  begin
284
284
  buffer,tgt,pkt,tv_sec,tv_usec,cnt = CmdTlmServer.get_packet_data(id, true)
285
- buffer.should_not be_nil
286
- tgt.should eql "COSMOS"
287
- pkt.should eql "VERSION"
288
- tv_sec.should > 0
289
- tv_usec.should > 0
290
- cnt.should eql 1
285
+ expect(buffer).not_to be_nil
286
+ expect(tgt).to eql "COSMOS"
287
+ expect(pkt).to eql "VERSION"
288
+ expect(tv_sec).to be > 0
289
+ expect(tv_usec).to be > 0
290
+ expect(cnt).to eql 1
291
291
  rescue => err
292
292
  sleep 0.1
293
293
  retry
@@ -298,12 +298,12 @@ module Cosmos
298
298
  # Get and check the second one
299
299
  begin
300
300
  buffer,tgt,pkt,tv_sec,tv_usec,cnt = CmdTlmServer.get_packet_data(id, true)
301
- buffer.should_not be_nil
302
- tgt.should eql "COSMOS"
303
- pkt.should eql "VERSION"
304
- tv_sec.should > 0
305
- tv_usec.should > 0
306
- cnt.should eql 2
301
+ expect(buffer).not_to be_nil
302
+ expect(tgt).to eql "COSMOS"
303
+ expect(pkt).to eql "VERSION"
304
+ expect(tv_sec).to be > 0
305
+ expect(tv_usec).to be > 0
306
+ expect(cnt).to eql 2
307
307
  rescue
308
308
  sleep 0.1
309
309
  retry
@@ -313,7 +313,7 @@ module Cosmos
313
313
  sleep 0.2
314
314
  end
315
315
 
316
- it "should delete queues after the max packets is reached" do
316
+ it "deletes queues after the max packets is reached" do
317
317
  version = System.telemetry.packet("COSMOS","VERSION")
318
318
  allow_any_instance_of(Interface).to receive(:read) do
319
319
  sleep 0.1
@@ -326,13 +326,13 @@ module Cosmos
326
326
  # Get and check the packet
327
327
  begin
328
328
  buffer,tgt,pkt,tv_sec,tv_usec,cnt = CmdTlmServer.get_packet_data(id, true)
329
- buffer.should_not be_nil
330
- tgt.should eql "COSMOS"
331
- pkt.should eql "VERSION"
332
- tv_sec.should > 0
329
+ expect(buffer).not_to be_nil
330
+ expect(tgt).to eql "COSMOS"
331
+ expect(pkt).to eql "VERSION"
332
+ expect(tv_sec).to be > 0
333
333
 
334
- tv_usec.should > 0
335
- cnt.should > 0
334
+ expect(tv_usec).to be > 0
335
+ expect(cnt).to be > 0
336
336
  rescue
337
337
  sleep 0.1
338
338
  retry
@@ -350,7 +350,7 @@ module Cosmos
350
350
  end
351
351
 
352
352
  describe "self.unsubscribe_packet_data" do
353
- it "should unsubscribe to packets" do
353
+ it "unsubscribes to packets" do
354
354
  version = System.telemetry.packet("COSMOS","VERSION")
355
355
  allow_any_instance_of(Interface).to receive(:read) do
356
356
  sleep 0.05
@@ -363,12 +363,12 @@ module Cosmos
363
363
  # Get and check the packet
364
364
  begin
365
365
  buffer,tgt,pkt,tv_sec,tv_usec,cnt = CmdTlmServer.get_packet_data(id, true)
366
- buffer.should_not be_nil
367
- tgt.should eql "COSMOS"
368
- pkt.should eql "VERSION"
369
- tv_sec.should > 0
370
- tv_usec.should > 0
371
- cnt.should > 0
366
+ expect(buffer).not_to be_nil
367
+ expect(tgt).to eql "COSMOS"
368
+ expect(pkt).to eql "VERSION"
369
+ expect(tv_sec).to be > 0
370
+ expect(tv_usec).to be > 0
371
+ expect(cnt).to be > 0
372
372
  rescue => err
373
373
  sleep 0.1
374
374
  retry
@@ -384,7 +384,7 @@ module Cosmos
384
384
  end
385
385
 
386
386
  describe "self.get_packet_data" do
387
- it "should raise an error if the queue is empty and non_block" do
387
+ it "raises an error if the queue is empty and non_block" do
388
388
  cts = CmdTlmServer.new
389
389
  id = CmdTlmServer.subscribe_packet_data([["COSMOS","VERSION"]])
390
390
 
@@ -395,7 +395,7 @@ module Cosmos
395
395
  end
396
396
 
397
397
  describe "self.clear_counters" do
398
- it "should clear all counters" do
398
+ it "clears all counters" do
399
399
  cts = CmdTlmServer.new
400
400
  expect(System).to receive(:clear_counters)
401
401
  expect(CmdTlmServer.interfaces).to receive(:clear_counters)
@@ -404,7 +404,7 @@ module Cosmos
404
404
 
405
405
  CmdTlmServer.clear_counters
406
406
 
407
- CmdTlmServer.json_drb.request_count.should eql 0
407
+ expect(CmdTlmServer.json_drb.request_count).to eql 0
408
408
  cts.stop
409
409
  sleep 0.2
410
410
  end
@@ -22,7 +22,7 @@ module Cosmos
22
22
  end
23
23
 
24
24
  describe "send_command_to_target" do
25
- it "should complain about unknown targets" do
25
+ it "complains about unknown targets" do
26
26
  tf = Tempfile.new('unittest')
27
27
  tf.close
28
28
  cmd = Commanding.new(CmdTlmServerConfig.new(tf.path))
@@ -30,7 +30,7 @@ module Cosmos
30
30
  tf.unlink
31
31
  end
32
32
 
33
- it "should identify and command to the interface" do
33
+ it "identifies and command to the interface" do
34
34
  tf = Tempfile.new('unittest')
35
35
  tf.puts 'INTERFACE MY_INT interface.rb'
36
36
  tf.close
@@ -51,7 +51,7 @@ module Cosmos
51
51
  count = System.targets['COSMOS'].cmd_cnt
52
52
  cmd.send_command_to_target('COSMOS', pkt)
53
53
  # Verify the COSMOS STARTLOGGING packet has been updated
54
- System.commands.packet("COSMOS","STARTLOGGING").buffer.should eql pkt.buffer
54
+ expect(System.commands.packet("COSMOS","STARTLOGGING").buffer).to eql pkt.buffer
55
55
  # Verify the target count didn't get updated
56
56
  expect(System.targets['COSMOS'].cmd_cnt).to eq count
57
57
  # Restore target name
@@ -59,7 +59,7 @@ module Cosmos
59
59
  tf.unlink
60
60
  end
61
61
 
62
- it "should send already identified commands" do
62
+ it "sends already identified commands" do
63
63
  tf = Tempfile.new('unittest')
64
64
  tf.puts 'INTERFACE MY_INT interface.rb'
65
65
  tf.close
@@ -76,13 +76,13 @@ module Cosmos
76
76
  count = System.targets['COSMOS'].cmd_cnt
77
77
  cmd.send_command_to_target('COSMOS', pkt)
78
78
  # Verify the COSMOS STARTLOGGING packet has been updated
79
- System.commands.packet("COSMOS","STARTLOGGING").buffer.should eql pkt.buffer
79
+ expect(System.commands.packet("COSMOS","STARTLOGGING").buffer).to eql pkt.buffer
80
80
  expect(System.targets['COSMOS'].cmd_cnt).to eq count + 1
81
81
  tf.unlink
82
82
  end
83
83
 
84
84
 
85
- it "should log unknown commands" do
85
+ it "logs unknown commands" do
86
86
  Logger.level = Logger::DEBUG
87
87
  stdout = StringIO.new('', 'r+')
88
88
  $stdout = stdout
@@ -106,17 +106,17 @@ module Cosmos
106
106
 
107
107
  cmd.send_command_to_target('COSMOS', pkt)
108
108
  # Verify the unknown packet has been updated
109
- System.commands.packet("UNKNOWN","UNKNOWN").buffer.should eql pkt.buffer
109
+ expect(System.commands.packet("UNKNOWN","UNKNOWN").buffer).to eql pkt.buffer
110
110
  tf.unlink
111
111
 
112
- stdout.string.should match "Unidentified packet"
112
+ expect(stdout.string).to match "Unidentified packet"
113
113
  Logger.level = Logger::FATAL
114
114
  $stdout = STDOUT
115
115
  end
116
116
  end
117
117
 
118
118
  describe "send_raw" do
119
- it "should complain about unknown interfaces" do
119
+ it "complains about unknown interfaces" do
120
120
  tf = Tempfile.new('unittest')
121
121
  tf.close
122
122
  cmd = Commanding.new(CmdTlmServerConfig.new(tf.path))
@@ -124,7 +124,7 @@ module Cosmos
124
124
  tf.unlink
125
125
  end
126
126
 
127
- it "should log writes" do
127
+ it "logs writes" do
128
128
  Logger.level = Logger::DEBUG
129
129
  stdout = StringIO.new('', 'r+')
130
130
  $stdout = stdout
@@ -140,7 +140,7 @@ module Cosmos
140
140
  cmd.send_raw('MY_INT', "\x00\x01")
141
141
  tf.unlink
142
142
 
143
- stdout.string.should match "Unlogged raw data of 2 bytes being sent to interface MY_INT"
143
+ expect(stdout.string).to match "Unlogged raw data of 2 bytes being sent to interface MY_INT"
144
144
  Logger.level = Logger::FATAL
145
145
  $stdout = STDOUT
146
146
  end
@@ -22,7 +22,7 @@ module Cosmos
22
22
  end
23
23
 
24
24
  describe "initialize" do
25
- it "should only allow :ROUTERS or :INTERFACES" do
25
+ it "only allows :ROUTERS or :INTERFACES" do
26
26
  tf = Tempfile.new('unittest')
27
27
  tf.close
28
28
  expect { Connections.new(:BLAH, CmdTlmServerConfig.new(tf.path)) }.to raise_error("Unknown type: BLAH. Must be :INTERFACES or :ROUTERS.")
@@ -31,7 +31,7 @@ module Cosmos
31
31
  end
32
32
 
33
33
  describe "start" do
34
- it "should call connect for each connection" do
34
+ it "calls connect for each connection" do
35
35
  tf = Tempfile.new('unittest')
36
36
  tf.puts 'ROUTER MY_ROUTER interface.rb'
37
37
  tf.close
@@ -42,7 +42,7 @@ module Cosmos
42
42
  end
43
43
 
44
44
  describe "stop" do
45
- it "should call disconnect for each connection" do
45
+ it "calls disconnect for each connection" do
46
46
  allow_any_instance_of(Interface).to receive(:disconnect)
47
47
  tf = Tempfile.new('unittest')
48
48
  tf.puts 'INTERFACE MY_INT interface.rb'
@@ -54,7 +54,7 @@ module Cosmos
54
54
  end
55
55
 
56
56
  describe "connect" do
57
- it "should call start_thread with no parameters" do
57
+ it "calls start_thread with no parameters" do
58
58
  tf = Tempfile.new('unittest')
59
59
  tf.puts 'INTERFACE MY_INT interface.rb'
60
60
  tf.close
@@ -64,7 +64,7 @@ module Cosmos
64
64
  tf.unlink
65
65
  end
66
66
 
67
- it "should call disconnect, recreate and start_thread with parameters" do
67
+ it "calls disconnect, recreate and start_thread with parameters" do
68
68
  allow_any_instance_of(Interface).to receive(:disconnect)
69
69
  tf = Tempfile.new('unittest')
70
70
  tf.puts 'INTERFACE MY_INT interface.rb'
@@ -79,7 +79,7 @@ module Cosmos
79
79
  end
80
80
 
81
81
  describe "recreate" do
82
- it "should raise an error" do
82
+ it "raises an error" do
83
83
  tf = Tempfile.new('unittest')
84
84
  tf.puts 'INTERFACE MY_INT interface.rb'
85
85
  tf.close
@@ -90,7 +90,7 @@ module Cosmos
90
90
  end
91
91
 
92
92
  describe "state" do
93
- it "should relay the state of the connection" do
93
+ it "relays the state of the connection" do
94
94
  allow_any_instance_of(Interface).to receive(:connected?).and_return(false, true, false)
95
95
  allow_any_instance_of(Interface).to receive(:thread).and_return(true, nil)
96
96
 
@@ -98,28 +98,28 @@ module Cosmos
98
98
  tf.puts 'ROUTER MY_ROUTER interface.rb'
99
99
  tf.close
100
100
  routers = Connections.new(:ROUTERS, CmdTlmServerConfig.new(tf.path))
101
- routers.state("MY_ROUTER").should eql "ATTEMPTING"
102
- routers.state("MY_ROUTER").should eql "CONNECTED"
103
- routers.state("MY_ROUTER").should eql "DISCONNECTED"
101
+ expect(routers.state("MY_ROUTER")).to eql "ATTEMPTING"
102
+ expect(routers.state("MY_ROUTER")).to eql "CONNECTED"
103
+ expect(routers.state("MY_ROUTER")).to eql "DISCONNECTED"
104
104
  tf.unlink
105
105
  end
106
106
  end
107
107
 
108
108
  describe "names" do
109
- it "should list all the names" do
109
+ it "lists all the names" do
110
110
  tf = Tempfile.new('unittest')
111
111
  tf.puts 'ROUTER ROUTER1 interface.rb'
112
112
  tf.puts 'ROUTER ROUTER2 interface.rb'
113
113
  tf.puts 'ROUTER ROUTER3 interface.rb'
114
114
  tf.close
115
115
  routers = Connections.new(:ROUTERS, CmdTlmServerConfig.new(tf.path))
116
- routers.names.should eql %w(ROUTER1 ROUTER2 ROUTER3)
116
+ expect(routers.names).to eql %w(ROUTER1 ROUTER2 ROUTER3)
117
117
  tf.unlink
118
118
  end
119
119
  end
120
120
 
121
121
  describe "clear_counters" do
122
- it "should clear all counters" do
122
+ it "clears all counters" do
123
123
  tf = Tempfile.new('unittest')
124
124
  tf.puts 'INTERFACE INTERFACE1 interface.rb'
125
125
  tf.puts 'INTERFACE INTERFACE2 interface.rb'
@@ -134,17 +134,17 @@ module Cosmos
134
134
  end
135
135
  interfaces.clear_counters
136
136
  interfaces.all.each do |name, interface|
137
- interface.bytes_written.should eql 0
138
- interface.bytes_read.should eql 0
139
- interface.write_count.should eql 0
140
- interface.read_count.should eql 0
137
+ expect(interface.bytes_written).to eql 0
138
+ expect(interface.bytes_read).to eql 0
139
+ expect(interface.write_count).to eql 0
140
+ expect(interface.read_count).to eql 0
141
141
  end
142
142
  tf.unlink
143
143
  end
144
144
  end
145
145
 
146
146
  describe "start_raw_logging" do
147
- it "should start raw logging on all connections by default" do
147
+ it "starts raw logging on all connections by default" do
148
148
  tf = Tempfile.new('unittest')
149
149
  tf.puts 'INTERFACE INTERFACE1 interface.rb'
150
150
  tf.puts 'INTERFACE INTERFACE2 interface.rb'
@@ -158,7 +158,7 @@ module Cosmos
158
158
  tf.unlink
159
159
  end
160
160
 
161
- it "should start raw logging on a specified connections by name" do
161
+ it "starts raw logging on a specified connections by name" do
162
162
  tf = Tempfile.new('unittest')
163
163
  tf.puts 'INTERFACE INTERFACE1 interface.rb'
164
164
  tf.puts 'INTERFACE INTERFACE2 interface.rb'
@@ -172,7 +172,7 @@ module Cosmos
172
172
  tf.unlink
173
173
  end
174
174
 
175
- it "should raise on an unknown connection" do
175
+ it "raises on an unknown connection" do
176
176
  tf = Tempfile.new('unittest')
177
177
  tf.puts 'INTERFACE INTERFACE1 interface.rb'
178
178
  tf.puts 'INTERFACE INTERFACE2 interface.rb'
@@ -188,7 +188,7 @@ module Cosmos
188
188
  end
189
189
 
190
190
  describe "stop_raw_logging" do
191
- it "should stop raw logging on all connections by default" do
191
+ it "stops raw logging on all connections by default" do
192
192
  tf = Tempfile.new('unittest')
193
193
  tf.puts 'INTERFACE INTERFACE1 interface.rb'
194
194
  tf.puts 'INTERFACE INTERFACE2 interface.rb'
@@ -202,7 +202,7 @@ module Cosmos
202
202
  tf.unlink
203
203
  end
204
204
 
205
- it "should stop raw logging on a specified connections by name" do
205
+ it "stops raw logging on a specified connections by name" do
206
206
  tf = Tempfile.new('unittest')
207
207
  tf.puts 'INTERFACE INTERFACE1 interface.rb'
208
208
  tf.puts 'INTERFACE INTERFACE2 interface.rb'
@@ -216,7 +216,7 @@ module Cosmos
216
216
  tf.unlink
217
217
  end
218
218
 
219
- it "should raise on an unknown connection" do
219
+ it "raises on an unknown connection" do
220
220
  tf = Tempfile.new('unittest')
221
221
  tf.puts 'INTERFACE INTERFACE1 interface.rb'
222
222
  tf.puts 'INTERFACE INTERFACE2 interface.rb'