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
@@ -20,39 +20,39 @@ module Cosmos
20
20
  end
21
21
 
22
22
  describe "values=" do
23
- it "should set the values Hash" do
23
+ it "sets the values Hash" do
24
24
  @l.values = {:DEFAULT => [0,1,2,3,4,5]}
25
- @l.values[:DEFAULT].should eql [0,1,2,3,4,5]
25
+ expect(@l.values[:DEFAULT]).to eql [0,1,2,3,4,5]
26
26
  end
27
27
 
28
- it "should allow nil values" do
28
+ it "allows nil values" do
29
29
  @l.values = nil
30
- @l.values.should be_nil
30
+ expect(@l.values).to be_nil
31
31
  end
32
32
 
33
- it "should complain about non Hash values" do
33
+ it "complains about non Hash values" do
34
34
  expect { @l.values = [] }.to raise_error(ArgumentError, "values must be a Hash but is a Array")
35
35
  end
36
36
 
37
- it "should complain about Hash values without a :DEFAULT key" do
37
+ it "complains about Hash values without a :DEFAULT key" do
38
38
  expect { @l.values = {} }.to raise_error(ArgumentError, "values must be a Hash with a :DEFAULT key")
39
39
  end
40
40
  end
41
41
 
42
42
  describe "state=" do
43
- it "should set the state to a Symbol" do
43
+ it "sets the state to a Symbol" do
44
44
  PacketItemLimits::LIMITS_STATES.each do |state|
45
45
  @l.state = state
46
- @l.state.should eql state
46
+ expect(@l.state).to eql state
47
47
  end
48
48
  end
49
49
 
50
- it "should set the state to nil" do
50
+ it "sets the state to nil" do
51
51
  @l.state = nil
52
- @l.state.should be_nil
52
+ expect(@l.state).to be_nil
53
53
  end
54
54
 
55
- it "should complain about bad Symbol states" do
55
+ it "complains about bad Symbol states" do
56
56
  expect { @l.state = :ORANGE }.to raise_error(ArgumentError, "state must be one of #{PacketItemLimits::LIMITS_STATES} but is ORANGE")
57
57
  expect { @l.state = "RED" }.to raise_error(ArgumentError, "state must be one of #{PacketItemLimits::LIMITS_STATES} but is RED")
58
58
  expect { @l.state = 5 }.to raise_error(ArgumentError, "state must be one of #{PacketItemLimits::LIMITS_STATES} but is 5")
@@ -60,67 +60,67 @@ module Cosmos
60
60
  end
61
61
 
62
62
  describe "response=" do
63
- it "should accept LimitsResponse instances" do
63
+ it "accepts LimitsResponse instances" do
64
64
  r = LimitsResponse.new()
65
65
  @l.response = r
66
- (LimitsResponse === @l.response).should be_truthy
66
+ expect(LimitsResponse === @l.response).to be_truthy
67
67
  end
68
68
 
69
- it "should set the response to nil" do
69
+ it "sets the response to nil" do
70
70
  @l.response = nil
71
- @l.response.should be_nil
71
+ expect(@l.response).to be_nil
72
72
  end
73
73
 
74
- it "should complain about non LimitsResponse responses" do
74
+ it "complains about non LimitsResponse responses" do
75
75
  expect { @l.response = "HI" }.to raise_error(ArgumentError, "response must be a Cosmos::LimitsResponse but is a String")
76
76
  end
77
77
  end
78
78
 
79
79
  describe "persistence_setting=" do
80
- it "should accept persistence_setting as a Fixnum" do
80
+ it "accepts persistence_setting as a Fixnum" do
81
81
  persistence_setting = 1
82
82
  @l.persistence_setting = persistence_setting
83
- @l.persistence_setting.should eql persistence_setting
83
+ expect(@l.persistence_setting).to eql persistence_setting
84
84
  end
85
85
 
86
- it "should complain about persistence_setting = nil" do
86
+ it "complains about persistence_setting = nil" do
87
87
  expect { @l.persistence_setting = nil}.to raise_error(ArgumentError, "persistence_setting must be a Fixnum but is a NilClass")
88
88
  end
89
89
 
90
- it "should complain about persistence_setting that aren't Fixnum" do
90
+ it "complains about persistence_setting that aren't Fixnum" do
91
91
  expect { @l.persistence_setting = 5.5}.to raise_error(ArgumentError, "persistence_setting must be a Fixnum but is a Float")
92
92
  end
93
93
  end
94
94
 
95
95
  describe "persistence_count=" do
96
- it "should accept persistence_count as a String" do
96
+ it "accepts persistence_count as a String" do
97
97
  persistence_count = 1
98
98
  @l.persistence_count = persistence_count
99
- @l.persistence_count.should eql persistence_count
99
+ expect(@l.persistence_count).to eql persistence_count
100
100
  end
101
101
 
102
- it "should complain about persistence_count = nil" do
102
+ it "complains about persistence_count = nil" do
103
103
  expect { @l.persistence_count = nil}.to raise_error(ArgumentError, "persistence_count must be a Fixnum but is a NilClass")
104
104
  end
105
105
 
106
- it "should complain about persistence_count that aren't Fixnum" do
106
+ it "complains about persistence_count that aren't Fixnum" do
107
107
  expect { @l.persistence_count = 5.5}.to raise_error(ArgumentError, "persistence_count must be a Fixnum but is a Float")
108
108
  end
109
109
  end
110
110
 
111
111
  describe "clone" do
112
- it "should duplicate the entire Limits" do
112
+ it "duplicates the entire Limits" do
113
113
  l2 = @l.clone
114
- @l.values.should eql l2.values
115
- @l.response.should eql l2.response
116
- @l.state.should eql l2.state
117
- @l.persistence_count.should eql l2.persistence_count
118
- @l.persistence_setting.should eql l2.persistence_setting
114
+ expect(@l.values).to eql l2.values
115
+ expect(@l.response).to eql l2.response
116
+ expect(@l.state).to eql l2.state
117
+ expect(@l.persistence_count).to eql l2.persistence_count
118
+ expect(@l.persistence_setting).to eql l2.persistence_setting
119
119
  end
120
120
  end
121
121
 
122
122
  describe "to_hash" do
123
- it "should create a Hash" do
123
+ it "creates a Hash" do
124
124
  @l.enabled = true
125
125
  @l.values = {:DEFAULT => [0,1,2,3,4,5]}
126
126
  @l.state = :RED_LOW
@@ -130,17 +130,17 @@ module Cosmos
130
130
  @l.persistence_count = 2
131
131
 
132
132
  hash = @l.to_hash
133
- hash.keys.length.should eql 6
134
- hash.keys.should include('values','enabled','state','response','persistence_setting','persistence_count')
135
- hash["enabled"].should be_truthy
136
- hash["values"].should include(:DEFAULT => [0,1,2,3,4,5])
137
- hash["state"].should eql :RED_LOW
138
- hash["response"].should match "LimitsResponse"
139
- hash["persistence_setting"].should eql 1
140
- hash["persistence_count"].should eql 2
133
+ expect(hash.keys.length).to eql 6
134
+ expect(hash.keys).to include('values','enabled','state','response','persistence_setting','persistence_count')
135
+ expect(hash["enabled"]).to be_truthy
136
+ expect(hash["values"]).to include(:DEFAULT => [0,1,2,3,4,5])
137
+ expect(hash["state"]).to eql :RED_LOW
138
+ expect(hash["response"]).to match "LimitsResponse"
139
+ expect(hash["persistence_setting"]).to eql 1
140
+ expect(hash["persistence_count"]).to eql 2
141
141
  end
142
142
 
143
- it "should create a Hash without a response" do
143
+ it "creates a Hash without a response" do
144
144
  @l.enabled = true
145
145
  @l.values = {:DEFAULT => [0,1,2,3,4,5]}
146
146
  @l.state = :RED_LOW
@@ -148,12 +148,12 @@ module Cosmos
148
148
  @l.persistence_count = 2
149
149
 
150
150
  hash = @l.to_hash
151
- hash["enabled"].should be_truthy
152
- hash["values"].should include(:DEFAULT => [0,1,2,3,4,5])
153
- hash["state"].should eql :RED_LOW
154
- hash["response"].should be_nil
155
- hash["persistence_setting"].should eql 1
156
- hash["persistence_count"].should eql 2
151
+ expect(hash["enabled"]).to be_truthy
152
+ expect(hash["values"]).to include(:DEFAULT => [0,1,2,3,4,5])
153
+ expect(hash["state"]).to eql :RED_LOW
154
+ expect(hash["response"]).to be_nil
155
+ expect(hash["persistence_setting"]).to eql 1
156
+ expect(hash["persistence_count"]).to eql 2
157
157
  end
158
158
  end
159
159
 
@@ -21,21 +21,21 @@ module Cosmos
21
21
  end
22
22
 
23
23
  describe "format_string=" do
24
- it "should set the format_string" do
24
+ it "sets the format_string" do
25
25
  @pi.format_string = "%5.1f"
26
- @pi.format_string.should eql "%5.1f"
26
+ expect(@pi.format_string).to eql "%5.1f"
27
27
  end
28
28
 
29
- it "should set the format_string to nil" do
29
+ it "sets the format_string to nil" do
30
30
  @pi.format_string = nil
31
- @pi.format_string.should be_nil
31
+ expect(@pi.format_string).to be_nil
32
32
  end
33
33
 
34
- it "should complain about non String format_strings" do
34
+ it "complains about non String format_strings" do
35
35
  expect { @pi.format_string = 5 }.to raise_error(ArgumentError, "#{@pi.name}: format_string must be a String but is a Fixnum")
36
36
  end
37
37
 
38
- it "should complain about badly formatted format_strings" do
38
+ it "complains about badly formatted format_strings" do
39
39
  expect { @pi.format_string = "%" }.to raise_error(ArgumentError, "#{@pi.name}: format_string invalid '%'")
40
40
  expect { @pi.format_string = "5" }.to raise_error(ArgumentError, "#{@pi.name}: format_string invalid '5'")
41
41
  expect { @pi.format_string = "%Q" }.to raise_error(ArgumentError, "#{@pi.name}: format_string invalid '%Q'")
@@ -43,57 +43,57 @@ module Cosmos
43
43
  end
44
44
 
45
45
  describe "read_conversion=" do
46
- it "should accept Conversion instances" do
46
+ it "accepts Conversion instances" do
47
47
  c = GenericConversion.new("value / 2")
48
48
  @pi.read_conversion = c
49
- (@pi.read_conversion.to_s == c.to_s).should be_truthy
49
+ expect(@pi.read_conversion.to_s == c.to_s).to be_truthy
50
50
  end
51
51
 
52
- it "should set the read_conversion to nil" do
52
+ it "sets the read_conversion to nil" do
53
53
  @pi.read_conversion = nil
54
- @pi.read_conversion.should be_nil
54
+ expect(@pi.read_conversion).to be_nil
55
55
  end
56
56
 
57
- it "should complain about non Conversion read_conversions" do
57
+ it "complains about non Conversion read_conversions" do
58
58
  expect { @pi.read_conversion = "HI" }.to raise_error(ArgumentError, "#{@pi.name}: read_conversion must be a Cosmos::Conversion but is a String")
59
59
  end
60
60
  end
61
61
 
62
62
  describe "write_conversion=" do
63
- it "should accept Conversion instances" do
63
+ it "accepts Conversion instances" do
64
64
  c = GenericConversion.new("value / 2")
65
65
  @pi.write_conversion = c
66
- (@pi.write_conversion.to_s == c.to_s).should be_truthy
66
+ expect(@pi.write_conversion.to_s == c.to_s).to be_truthy
67
67
  end
68
68
 
69
- it "should set the write_conversion to nil" do
69
+ it "sets the write_conversion to nil" do
70
70
  @pi.write_conversion = nil
71
- @pi.write_conversion.should be_nil
71
+ expect(@pi.write_conversion).to be_nil
72
72
  end
73
73
 
74
- it "should complain about non Conversion write_conversions" do
74
+ it "complains about non Conversion write_conversions" do
75
75
  expect { @pi.write_conversion = "HI" }.to raise_error(ArgumentError, "#{@pi.name}: write_conversion must be a Cosmos::Conversion but is a String")
76
76
  end
77
77
  end
78
78
 
79
79
  describe "id_value=" do
80
- it "should accept id values according to data_type" do
80
+ it "accepts id values according to data_type" do
81
81
  @pi.id_value = 10
82
- @pi.id_value.should eql 10
82
+ expect(@pi.id_value).to eql 10
83
83
  @pi.data_type = :FLOAT
84
84
  @pi.id_value = 10.0
85
- @pi.id_value.should eql 10.0
85
+ expect(@pi.id_value).to eql 10.0
86
86
  @pi.data_type = :STRING
87
87
  @pi.id_value = "HI"
88
- @pi.id_value.should eql "HI"
88
+ expect(@pi.id_value).to eql "HI"
89
89
  end
90
90
 
91
- it "should set the id_value to nil" do
91
+ it "sets the id_value to nil" do
92
92
  @pi.id_value = nil
93
- @pi.id_value.should be_nil
93
+ expect(@pi.id_value).to be_nil
94
94
  end
95
95
 
96
- it "should complain about id_values that don't match the data_type" do
96
+ it "complains about id_values that don't match the data_type" do
97
97
  expect { @pi.id_value = "HI" }.to raise_error(ArgumentError, "#{@pi.name}: Invalid value: HI for data type: UINT")
98
98
  @pi.data_type = :FLOAT
99
99
  expect { @pi.id_value = "HI" }.to raise_error(ArgumentError, "#{@pi.name}: Invalid value: HI for data type: FLOAT")
@@ -101,97 +101,97 @@ module Cosmos
101
101
  end
102
102
 
103
103
  describe "states=" do
104
- it "should accept states as a Hash" do
104
+ it "accepts states as a Hash" do
105
105
  states = {"TRUE"=>1, "FALSE"=>0}
106
106
  @pi.states = states
107
- @pi.states.should eql states
107
+ expect(@pi.states).to eql states
108
108
  end
109
109
 
110
- it "should set the states to nil" do
110
+ it "sets the states to nil" do
111
111
  @pi.states = nil
112
- @pi.states.should be_nil
112
+ expect(@pi.states).to be_nil
113
113
  end
114
114
 
115
- it "should complain about states that aren't Hashes" do
115
+ it "complains about states that aren't Hashes" do
116
116
  expect { @pi.states = "state" }.to raise_error(ArgumentError, "#{@pi.name}: states must be a Hash but is a String")
117
117
  end
118
118
  end
119
119
 
120
120
  describe "description=" do
121
- it "should accept description as a String" do
121
+ it "accepts description as a String" do
122
122
  description = "this is it"
123
123
  @pi.description = description
124
- @pi.description.should eql description
124
+ expect(@pi.description).to eql description
125
125
  end
126
126
 
127
- it "should set the description to nil" do
127
+ it "sets the description to nil" do
128
128
  @pi.description = nil
129
- @pi.description.should be_nil
129
+ expect(@pi.description).to be_nil
130
130
  end
131
131
 
132
- it "should complain about description that aren't Strings" do
132
+ it "complains about description that aren't Strings" do
133
133
  expect { @pi.description = 5}.to raise_error(ArgumentError, "#{@pi.name}: description must be a String but is a Fixnum")
134
134
  end
135
135
  end
136
136
 
137
137
  describe "units_full=" do
138
- it "should accept units_full as a String" do
138
+ it "accepts units_full as a String" do
139
139
  units_full = "Volts"
140
140
  @pi.units_full = units_full
141
- @pi.units_full.should eql units_full
141
+ expect(@pi.units_full).to eql units_full
142
142
  end
143
143
 
144
- it "should set the units_full to nil" do
144
+ it "sets the units_full to nil" do
145
145
  @pi.units_full = nil
146
- @pi.units_full.should be_nil
146
+ expect(@pi.units_full).to be_nil
147
147
  end
148
148
 
149
- it "should complain about units_full that aren't Strings" do
149
+ it "complains about units_full that aren't Strings" do
150
150
  expect { @pi.units_full = 5}.to raise_error(ArgumentError, "#{@pi.name}: units_full must be a String but is a Fixnum")
151
151
  end
152
152
  end
153
153
 
154
154
  describe "units=" do
155
- it "should accept units as a String" do
155
+ it "accepts units as a String" do
156
156
  units = "V"
157
157
  @pi.units = units
158
- @pi.units.should eql units
158
+ expect(@pi.units).to eql units
159
159
  end
160
160
 
161
- it "should set the units to nil" do
161
+ it "sets the units to nil" do
162
162
  @pi.units = nil
163
- @pi.units.should be_nil
163
+ expect(@pi.units).to be_nil
164
164
  end
165
165
 
166
- it "should complain about units that aren't Strings" do
166
+ it "complains about units that aren't Strings" do
167
167
  expect { @pi.units = 5}.to raise_error(ArgumentError, "#{@pi.name}: units must be a String but is a Fixnum")
168
168
  end
169
169
  end
170
170
 
171
171
  describe "default=" do
172
- it "should accept default according to the data_type" do
172
+ it "accepts default according to the data_type" do
173
173
  pi = PacketItem.new("test", 0, 8, :INT, :BIG_ENDIAN, 16)
174
174
  pi.default = [1, -1]
175
- pi.default.should eql [1, -1]
175
+ expect(pi.default).to eql [1, -1]
176
176
  pi = PacketItem.new("test", 0, 32, :UINT, :BIG_ENDIAN, nil)
177
177
  pi.default = 0x01020304
178
- pi.default.should eql 0x01020304
178
+ expect(pi.default).to eql 0x01020304
179
179
  pi = PacketItem.new("test", 0, 32, :FLOAT, :BIG_ENDIAN, nil)
180
180
  pi.default = 5.5
181
- pi.default.should eql 5.5
181
+ expect(pi.default).to eql 5.5
182
182
  pi = PacketItem.new("test", 0, 32, :STRING, :BIG_ENDIAN, nil)
183
183
  pi.default = "HI"
184
- pi.default.should eql "HI"
184
+ expect(pi.default).to eql "HI"
185
185
  end
186
186
 
187
- it "should set the default to nil" do
187
+ it "sets the default to nil" do
188
188
  @pi.default = nil
189
- @pi.default.should be_nil
189
+ expect(@pi.default).to be_nil
190
190
  end
191
191
  end
192
192
 
193
193
  describe "check_default_and_range_data_types" do
194
- it "should complain about default not matching data_type" do
194
+ it "complains about default not matching data_type" do
195
195
  pi = PacketItem.new("test", 0, 8, :UINT, :BIG_ENDIAN, 16)
196
196
  pi.default = 1
197
197
  expect { pi.check_default_and_range_data_types }.to raise_error(ArgumentError, "TEST: default must be an Array but is a Fixnum")
@@ -227,7 +227,7 @@ module Cosmos
227
227
  expect { pi.check_default_and_range_data_types }.to_not raise_error
228
228
  end
229
229
 
230
- it "should complain about range not matching data_type" do
230
+ it "complains about range not matching data_type" do
231
231
  pi = PacketItem.new("test", 0, 32, :UINT, :BIG_ENDIAN, nil)
232
232
  pi.default = 5
233
233
  pi.range = (5.5..10)
@@ -246,90 +246,90 @@ module Cosmos
246
246
  end
247
247
 
248
248
  describe "range=" do
249
- it "should accept range as a String" do
249
+ it "accepts range as a String" do
250
250
  range = (0..1)
251
251
  @pi.range = range
252
- @pi.range.should eql range
252
+ expect(@pi.range).to eql range
253
253
  end
254
254
 
255
- it "should set the range to nil" do
255
+ it "sets the range to nil" do
256
256
  @pi.range = nil
257
- @pi.range.should be_nil
257
+ expect(@pi.range).to be_nil
258
258
  end
259
259
 
260
- it "should complain about ranges that aren't Ranges" do
260
+ it "complains about ranges that aren't Ranges" do
261
261
  expect { @pi.range = 5}.to raise_error(ArgumentError, "#{@pi.name}: range must be a Range but is a Fixnum")
262
262
  end
263
263
  end
264
264
 
265
265
  describe "hazardous=" do
266
- it "should accept hazardous as a Hash" do
266
+ it "accepts hazardous as a Hash" do
267
267
  hazardous = {"TRUE"=>nil,"FALSE"=>"NO FALSE ALLOWED"}
268
268
  @pi.hazardous = hazardous
269
- @pi.hazardous.should eql hazardous
270
- @pi.hazardous["TRUE"].should eql hazardous["TRUE"]
271
- @pi.hazardous["FALSE"].should eql hazardous["FALSE"]
269
+ expect(@pi.hazardous).to eql hazardous
270
+ expect(@pi.hazardous["TRUE"]).to eql hazardous["TRUE"]
271
+ expect(@pi.hazardous["FALSE"]).to eql hazardous["FALSE"]
272
272
  end
273
273
 
274
- it "should set hazardous to nil" do
274
+ it "sets hazardous to nil" do
275
275
  @pi.hazardous = nil
276
- @pi.hazardous.should be_nil
276
+ expect(@pi.hazardous).to be_nil
277
277
  end
278
278
 
279
- it "should complain about hazardous that aren't Hashes" do
279
+ it "complains about hazardous that aren't Hashes" do
280
280
  expect { @pi.hazardous = ""}.to raise_error(ArgumentError, "#{@pi.name}: hazardous must be a Hash but is a String")
281
281
  end
282
282
  end
283
283
 
284
284
  describe "state_colors=" do
285
- it "should accept state_colors as a Hash" do
285
+ it "accepts state_colors as a Hash" do
286
286
  state_colors = {"TRUE"=>:GREEN, "FALSE"=>:RED}
287
287
  @pi.state_colors = state_colors
288
- @pi.state_colors.should eql state_colors
288
+ expect(@pi.state_colors).to eql state_colors
289
289
  end
290
290
 
291
- it "should set the state_colors to nil" do
291
+ it "sets the state_colors to nil" do
292
292
  @pi.state_colors = nil
293
- @pi.state_colors.should be_nil
293
+ expect(@pi.state_colors).to be_nil
294
294
  end
295
295
 
296
- it "should complain about state_colors that aren't Hashes" do
296
+ it "complains about state_colors that aren't Hashes" do
297
297
  expect { @pi.state_colors = ""}.to raise_error(ArgumentError, "#{@pi.name}: state_colors must be a Hash but is a String")
298
298
  end
299
299
  end
300
300
 
301
301
  describe "limits=" do
302
- it "should accept limits as a PacketItemLimits" do
302
+ it "accepts limits as a PacketItemLimits" do
303
303
  limits = PacketItemLimits.new
304
304
  @pi.limits = limits
305
305
  end
306
306
 
307
- it "should set the limits to nil" do
307
+ it "sets the limits to nil" do
308
308
  @pi.limits = nil
309
- @pi.limits.should be_nil
309
+ expect(@pi.limits).to be_nil
310
310
  end
311
311
 
312
- it "should complain about limits that aren't PacketItemLimits" do
312
+ it "complains about limits that aren't PacketItemLimits" do
313
313
  expect { @pi.limits = ""}.to raise_error(ArgumentError, "#{@pi.name}: limits must be a PacketItemLimits but is a String")
314
314
  end
315
315
  end
316
316
 
317
317
  describe "meta" do
318
- it "should allow adding items to the meta hash" do
318
+ it "allows adding items to the meta hash" do
319
319
  @pi.meta['TYPE'] = 'float32'
320
- @pi.meta['TYPE'].should eql 'float32'
320
+ expect(@pi.meta['TYPE']).to eql 'float32'
321
321
  end
322
322
  end
323
323
 
324
324
  describe "clone" do
325
- it "should duplicate the entire PacketItem" do
325
+ it "duplicates the entire PacketItem" do
326
326
  pi2 = @pi.clone
327
- (@pi == pi2).should be_truthy
327
+ expect(@pi == pi2).to be_truthy
328
328
  end
329
329
  end
330
330
 
331
331
  describe "to_hash" do
332
- it "should convert to a Hash" do
332
+ it "converts to a Hash" do
333
333
  @pi.format_string = "%5.1f"
334
334
  @pi.id_value = 10
335
335
  @pi.states = {"TRUE"=>1, "FALSE"=>0}
@@ -346,39 +346,39 @@ module Cosmos
346
346
  @pi.limits = PacketItemLimits.new
347
347
 
348
348
  hash = @pi.to_hash
349
- hash.keys.length.should eql 22
349
+ expect(hash.keys.length).to eql 22
350
350
  # Check the values from StructureItem
351
- hash.keys.should include('name','bit_offset','bit_size','data_type','endianness','array_size','overflow')
352
- hash["name"].should eql "TEST"
353
- hash["bit_offset"].should eql 0
354
- hash["bit_size"].should eql 32
355
- hash["data_type"].should eql :UINT
356
- hash["endianness"].should eql :BIG_ENDIAN
357
- hash["array_size"].should be_nil
358
- hash["overflow"].should eql :ERROR
351
+ expect(hash.keys).to include('name','bit_offset','bit_size','data_type','endianness','array_size','overflow')
352
+ expect(hash["name"]).to eql "TEST"
353
+ expect(hash["bit_offset"]).to eql 0
354
+ expect(hash["bit_size"]).to eql 32
355
+ expect(hash["data_type"]).to eql :UINT
356
+ expect(hash["endianness"]).to eql :BIG_ENDIAN
357
+ expect(hash["array_size"]).to be_nil
358
+ expect(hash["overflow"]).to eql :ERROR
359
359
  # Check the unique PacketItem values
360
- hash.keys.should include('format_string','read_conversion','write_conversion','id_value','states','description','units_full','units','default','range','required','hazardous','state_colors','limits')
361
- hash["format_string"].should eql "%5.1f"
362
- hash["read_conversion"].should match "value / 2"
363
- hash["write_conversion"].should match /value \* 2/
364
- hash["id_value"].should eql 10
365
- hash["states"].should include("TRUE"=>1,"FALSE"=>0)
366
- hash["description"].should eql "description"
367
- hash["units_full"].should eql "Celcius"
368
- hash["units"].should eql "C"
369
- hash["default"].should eql 0
370
- hash["range"].should eql (0..100)
371
- hash["required"].should be_truthy
372
- hash["hazardous"].should include("TRUE"=>nil,"FALSE"=>"NO!")
373
- hash["state_colors"].should include("TRUE"=>:GREEN,"FALSE"=>:RED)
374
- hash["limits"].should eql PacketItemLimits.new.to_hash
375
- hash["meta"].should be_nil
376
- end
377
-
378
- it "should convert to a Hash with no conversions" do
360
+ expect(hash.keys).to include('format_string','read_conversion','write_conversion','id_value','states','description','units_full','units','default','range','required','hazardous','state_colors','limits')
361
+ expect(hash["format_string"]).to eql "%5.1f"
362
+ expect(hash["read_conversion"]).to match "value / 2"
363
+ expect(hash["write_conversion"]).to match /value \* 2/
364
+ expect(hash["id_value"]).to eql 10
365
+ expect(hash["states"]).to include("TRUE"=>1,"FALSE"=>0)
366
+ expect(hash["description"]).to eql "description"
367
+ expect(hash["units_full"]).to eql "Celcius"
368
+ expect(hash["units"]).to eql "C"
369
+ expect(hash["default"]).to eql 0
370
+ expect(hash["range"]).to eql (0..100)
371
+ expect(hash["required"]).to be_truthy
372
+ expect(hash["hazardous"]).to include("TRUE"=>nil,"FALSE"=>"NO!")
373
+ expect(hash["state_colors"]).to include("TRUE"=>:GREEN,"FALSE"=>:RED)
374
+ expect(hash["limits"]).to eql PacketItemLimits.new.to_hash
375
+ expect(hash["meta"]).to be_nil
376
+ end
377
+
378
+ it "converts to a Hash with no conversions" do
379
379
  hash = @pi.to_hash
380
- hash["read_conversion"].should be_nil
381
- hash["write_conversion"].should be_nil
380
+ expect(hash["read_conversion"]).to be_nil
381
+ expect(hash["write_conversion"]).to be_nil
382
382
  end
383
383
  end
384
384