cosmos 4.1.1-java → 4.2.0-java
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +0 -2
- data/.travis.yml +2 -0
- data/.yardopts +1 -0
- data/Gemfile +1 -0
- data/Manifest.txt +130 -0
- data/autohotkey/tools/ConfigEditorAHK +19 -0
- data/autohotkey/tools/cmd_extractor.ahk +4 -4
- data/autohotkey/tools/cmd_sequence.ahk +9 -5
- data/autohotkey/tools/config_editor.ahk +197 -0
- data/autohotkey/tools/packet_viewer.ahk +12 -6
- data/autohotkey/tools/replay.ahk +29 -29
- data/autohotkey/tools/script_runner.ahk +10 -2
- data/autohotkey/tools/tlm_extractor.ahk +7 -8
- data/autohotkey/tools/tlm_grapher.ahk +21 -9
- data/bin/dart_import +2 -0
- data/cosmos.gemspec +18 -16
- data/data/config/cmd_tlm_server.yaml +9 -0
- data/data/config/interface_modifiers.yaml +17 -0
- data/data/config/item_modifiers.yaml +3 -3
- data/data/crc.txt +184 -90
- data/data/dart.png +0 -0
- data/demo/Gemfile +1 -0
- data/demo/Rakefile +4 -0
- data/demo/config/dart/Gemfile +54 -0
- data/demo/config/data/crc.txt +28 -21
- data/demo/config/system/system.txt +3 -0
- data/demo/config/system/system2.txt +3 -0
- data/demo/config/targets/INST/cmd_tlm/inst_cmds.txt +3 -3
- data/demo/config/targets/INST/cmd_tlm/inst_tlm.txt +1 -1
- data/demo/config/targets/INST/lib/sim_inst.rb +1 -1
- data/demo/config/targets/INST/screens/adcs.txt +2 -1
- data/demo/config/targets/INST/screens/array.txt +1 -1
- data/demo/config/targets/INST/screens/block.txt +1 -1
- data/demo/config/targets/INST/screens/commanding.txt +7 -2
- data/demo/config/targets/INST/screens/graphs.txt +1 -1
- data/demo/config/targets/INST/screens/ground.txt +1 -1
- data/demo/config/targets/INST/screens/hs.txt +2 -1
- data/demo/config/targets/INST/screens/latest.txt +1 -1
- data/demo/config/targets/INST/screens/limits.txt +1 -1
- data/demo/config/targets/INST/screens/other.txt +1 -1
- data/demo/config/targets/INST/screens/tabs.txt +1 -1
- data/demo/config/tools/cmd_tlm_server/cmd_tlm_server.txt +2 -2
- data/demo/config/tools/cmd_tlm_server/cmd_tlm_server2.txt +3 -1
- data/demo/config/tools/launcher/launcher.txt +3 -2
- data/demo/tools/Dart +16 -0
- data/demo/tools/Dart.bat +9 -0
- data/demo/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +0 -0
- data/demo/tools/mac/ConfigEditor.app/Contents/MacOS/main.sh +0 -0
- data/install/Gemfile +1 -0
- data/install/Rakefile +4 -0
- data/install/config/dart/Gemfile +54 -0
- data/install/config/data/crc.txt +6 -3
- data/install/config/system/system.txt +3 -0
- data/install/config/tools/launcher/launcher.txt +3 -2
- data/install/tools/Dart +16 -0
- data/install/tools/Dart.bat +9 -0
- data/install/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +0 -0
- data/install/tools/mac/ConfigEditor.app/Contents/MacOS/main.sh +0 -0
- data/lib/cosmos/core_ext/time.rb +8 -8
- data/lib/cosmos/dart/.rspec +1 -0
- data/lib/cosmos/dart/Gemfile +69 -0
- data/lib/cosmos/dart/Rakefile +7 -0
- data/lib/cosmos/dart/app/assets/config/manifest.js +4 -0
- data/lib/cosmos/dart/app/assets/images/.keep +0 -0
- data/lib/cosmos/dart/app/assets/javascripts/application.js +13 -0
- data/lib/cosmos/dart/app/assets/javascripts/cable.js +13 -0
- data/lib/cosmos/dart/app/assets/stylesheets/application.css.scss +15 -0
- data/lib/cosmos/dart/app/channels/application_cable/channel.rb +4 -0
- data/lib/cosmos/dart/app/channels/application_cable/connection.rb +4 -0
- data/lib/cosmos/dart/app/controllers/application_controller.rb +3 -0
- data/lib/cosmos/dart/app/helpers/application_helper.rb +2 -0
- data/lib/cosmos/dart/app/jobs/application_job.rb +2 -0
- data/lib/cosmos/dart/app/mailers/application_mailer.rb +4 -0
- data/lib/cosmos/dart/app/models/application_record.rb +3 -0
- data/lib/cosmos/dart/app/models/item.rb +6 -0
- data/lib/cosmos/dart/app/models/item_to_decom_table_mapping.rb +9 -0
- data/lib/cosmos/dart/app/models/packet.rb +4 -0
- data/lib/cosmos/dart/app/models/packet_config.rb +7 -0
- data/lib/cosmos/dart/app/models/packet_log.rb +3 -0
- data/lib/cosmos/dart/app/models/packet_log_entry.rb +41 -0
- data/lib/cosmos/dart/app/models/system_config.rb +2 -0
- data/lib/cosmos/dart/app/models/target.rb +4 -0
- data/lib/cosmos/dart/app/views/layouts/application.html.erb +14 -0
- data/lib/cosmos/dart/app/views/layouts/mailer.html.erb +13 -0
- data/lib/cosmos/dart/app/views/layouts/mailer.text.erb +1 -0
- data/lib/cosmos/dart/bin/bundle +3 -0
- data/lib/cosmos/dart/bin/rails +4 -0
- data/lib/cosmos/dart/bin/rake +4 -0
- data/lib/cosmos/dart/bin/setup +34 -0
- data/lib/cosmos/dart/bin/update +29 -0
- data/lib/cosmos/dart/config.ru +5 -0
- data/lib/cosmos/dart/config/application.rb +29 -0
- data/lib/cosmos/dart/config/boot.rb +3 -0
- data/lib/cosmos/dart/config/cable.yml +9 -0
- data/lib/cosmos/dart/config/database.yml +23 -0
- data/lib/cosmos/dart/config/environment.rb +5 -0
- data/lib/cosmos/dart/config/environments/development.rb +62 -0
- data/lib/cosmos/dart/config/environments/production.rb +84 -0
- data/lib/cosmos/dart/config/environments/test.rb +42 -0
- data/lib/cosmos/dart/config/initializers/application_controller_renderer.rb +6 -0
- data/lib/cosmos/dart/config/initializers/assets.rb +12 -0
- data/lib/cosmos/dart/config/initializers/backtrace_silencers.rb +7 -0
- data/lib/cosmos/dart/config/initializers/cookies_serializer.rb +5 -0
- data/lib/cosmos/dart/config/initializers/filter_parameter_logging.rb +4 -0
- data/lib/cosmos/dart/config/initializers/inflections.rb +16 -0
- data/lib/cosmos/dart/config/initializers/mime_types.rb +4 -0
- data/lib/cosmos/dart/config/initializers/new_framework_defaults.rb +25 -0
- data/lib/cosmos/dart/config/initializers/session_store.rb +3 -0
- data/lib/cosmos/dart/config/initializers/wrap_parameters.rb +14 -0
- data/lib/cosmos/dart/config/locales/en.yml +23 -0
- data/lib/cosmos/dart/config/puma.rb +47 -0
- data/lib/cosmos/dart/config/routes.rb +3 -0
- data/lib/cosmos/dart/config/secrets.yml +22 -0
- data/lib/cosmos/dart/db/migrate/20170406172907_create_targets.rb +8 -0
- data/lib/cosmos/dart/db/migrate/20170406172927_create_packets.rb +10 -0
- data/lib/cosmos/dart/db/migrate/20170406172937_create_packet_logs.rb +9 -0
- data/lib/cosmos/dart/db/migrate/20170406172943_create_packet_log_entries.rb +16 -0
- data/lib/cosmos/dart/db/migrate/20170406183500_change_packet_log_entries_primary_key.rb +5 -0
- data/lib/cosmos/dart/db/migrate/20170407153618_add_unique_requirements.rb +7 -0
- data/lib/cosmos/dart/db/migrate/20170511155447_add_meta_id_to_packet_log_entries.rb +6 -0
- data/lib/cosmos/dart/db/migrate/20170523185056_rename_received_time_and_add_is_tlm_to_packet_log_entries.rb +7 -0
- data/lib/cosmos/dart/db/migrate/20170525201157_create_items.rb +10 -0
- data/lib/cosmos/dart/db/migrate/20170525201315_create_system_configs.rb +9 -0
- data/lib/cosmos/dart/db/migrate/20170525201624_create_packet_configs.rb +11 -0
- data/lib/cosmos/dart/db/migrate/20170525201745_create_item_to_decom_table_mappings.rb +12 -0
- data/lib/cosmos/dart/db/migrate/20170525201939_create_decom_tables.rb +12 -0
- data/lib/cosmos/dart/db/migrate/20170525202051_add_decom_state_to_packet_log_entry.rb +5 -0
- data/lib/cosmos/dart/db/migrate/20170913160409_update_items.rb +6 -0
- data/lib/cosmos/dart/db/migrate/20170913160558_update_item_to_decom_table_mapping.rb +11 -0
- data/lib/cosmos/dart/db/migrate/20170913160916_udpate_decom_table.rb +6 -0
- data/lib/cosmos/dart/db/migrate/20170913212026_add_ready_to_packet_configs.rb +5 -0
- data/lib/cosmos/dart/db/migrate/20170913223556_modify_tables.rb +9 -0
- data/lib/cosmos/dart/db/migrate/20170914215744_modify_mapping_table.rb +6 -0
- data/lib/cosmos/dart/db/migrate/20170919201433_add_system_config_id_to_packet_config.rb +11 -0
- data/lib/cosmos/dart/db/migrate/20170919210307_add_max_table_index_to_packet_configs.rb +5 -0
- data/lib/cosmos/dart/db/migrate/20171215225546_add_ready_to_packet_log_entries.rb +5 -0
- data/lib/cosmos/dart/db/migrate/20180116214338_add_index_for_ple_ready_to_packet_log_entries.rb +5 -0
- data/lib/cosmos/dart/db/schema.rb +103 -0
- data/lib/cosmos/dart/db/seeds.rb +7 -0
- data/lib/cosmos/dart/examples/dart_decom_client.rb +45 -0
- data/lib/cosmos/dart/examples/dart_stream_client.rb +93 -0
- data/lib/cosmos/dart/lib/dart_common.rb +749 -0
- data/lib/cosmos/dart/lib/dart_database_cleaner.rb +172 -0
- data/lib/cosmos/dart/lib/dart_decom_query.rb +184 -0
- data/lib/cosmos/dart/lib/dart_decommutator.rb +235 -0
- data/lib/cosmos/dart/lib/dart_importer.rb +154 -0
- data/lib/cosmos/dart/lib/dart_logging.rb +50 -0
- data/lib/cosmos/dart/lib/dart_packet_log_writer.rb +139 -0
- data/lib/cosmos/dart/lib/dart_reducer_manager.rb +85 -0
- data/lib/cosmos/dart/lib/dart_reducer_worker_thread.rb +263 -0
- data/lib/cosmos/dart/lib/dart_tcpip_server_interface.rb +142 -0
- data/lib/cosmos/dart/processes/dart.rb +145 -0
- data/lib/cosmos/dart/processes/dart_decom_server.rb +39 -0
- data/lib/cosmos/dart/processes/dart_import.rb +63 -0
- data/lib/cosmos/dart/processes/dart_ingester.rb +92 -0
- data/lib/cosmos/dart/processes/dart_reducer.rb +27 -0
- data/lib/cosmos/dart/processes/dart_stream_server.rb +31 -0
- data/lib/cosmos/dart/processes/dart_worker.rb +37 -0
- data/lib/cosmos/dart/spec/dart/dart_common_spec.rb +333 -0
- data/lib/cosmos/dart/spec/dart/dart_database_cleaner_spec.rb +455 -0
- data/lib/cosmos/dart/spec/dart/dart_decom_query_spec.rb +153 -0
- data/lib/cosmos/dart/spec/dart/dart_decommutator_spec.rb +336 -0
- data/lib/cosmos/dart/spec/dart/dart_importer_spec.rb +83 -0
- data/lib/cosmos/dart/spec/dart/dart_logging_spec.rb +30 -0
- data/lib/cosmos/dart/spec/dart/dart_packet_log_writer_spec.rb +149 -0
- data/lib/cosmos/dart/spec/dart/dart_reducer_manager_spec.rb +289 -0
- data/lib/cosmos/dart/spec/dart/dart_tcpip_server_interface_spec.rb +241 -0
- data/lib/cosmos/dart/spec/rails_helper.rb +60 -0
- data/lib/cosmos/dart/spec/spec_helper.rb +139 -0
- data/lib/cosmos/gui/dialogs/about_dialog.rb +1 -1
- data/lib/cosmos/gui/dialogs/dart_dialog.rb +60 -0
- data/lib/cosmos/gui/dialogs/legal_dialog.rb +1 -0
- data/lib/cosmos/gui/dialogs/scroll_text_dialog.rb +0 -3
- data/lib/cosmos/gui/qt.rb +10 -1
- data/lib/cosmos/gui/text/completion.rb +10 -9
- data/lib/cosmos/gui/text/completion_text_edit.rb +16 -14
- data/lib/cosmos/gui/text/ruby_editor.rb +2 -2
- data/lib/cosmos/gui/widgets/dart_frame.rb +142 -0
- data/lib/cosmos/gui/widgets/dart_meta_frame.rb +119 -0
- data/lib/cosmos/gui/widgets/packet_log_frame.rb +42 -12
- data/lib/cosmos/interfaces/interface.rb +1 -2
- data/lib/cosmos/interfaces/protocols/crc_protocol.rb +26 -8
- data/lib/cosmos/interfaces/protocols/fixed_protocol.rb +8 -2
- data/lib/cosmos/interfaces/protocols/protocol.rb +2 -1
- data/lib/cosmos/interfaces/protocols/template_protocol.rb +1 -1
- data/lib/cosmos/interfaces/stream_interface.rb +1 -0
- data/lib/cosmos/interfaces/tcpip_server_interface.rb +2 -3
- data/lib/cosmos/io/json_drb_object.rb +1 -1
- data/lib/cosmos/io/json_rpc.rb +2 -1
- data/lib/cosmos/io/win32_serial_driver.rb +2 -9
- data/lib/cosmos/packet_logs/packet_log_writer.rb +1 -1
- data/lib/cosmos/packets/packet.rb +22 -12
- data/lib/cosmos/packets/packet_config.rb +2 -1
- data/lib/cosmos/packets/packet_item.rb +26 -24
- data/lib/cosmos/packets/parsers/macro_parser.rb +5 -2
- data/lib/cosmos/packets/parsers/packet_item_parser.rb +35 -17
- data/lib/cosmos/packets/parsers/packet_parser.rb +3 -10
- data/lib/cosmos/packets/parsers/xtce_converter.rb +21 -35
- data/lib/cosmos/packets/parsers/xtce_parser.rb +54 -46
- data/lib/cosmos/packets/structure.rb +10 -2
- data/lib/cosmos/packets/structure_item.rb +22 -8
- data/lib/cosmos/processors/statistics_processor.rb +2 -0
- data/lib/cosmos/script/api_shared.rb +13 -12
- data/lib/cosmos/script/cmd_tlm_server.rb +4 -0
- data/lib/cosmos/script/commands.rb +3 -15
- data/lib/cosmos/script/script.rb +69 -23
- data/lib/cosmos/streams/tcpip_client_stream.rb +2 -2
- data/lib/cosmos/system/system.rb +42 -25
- data/lib/cosmos/system/target.rb +6 -2
- data/lib/cosmos/tools/cmd_extractor/cmd_extractor.rb +177 -36
- data/lib/cosmos/tools/cmd_sender/cmd_param_table_item_delegate.rb +3 -2
- data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +34 -8
- data/lib/cosmos/tools/cmd_sequence/cmd_sequence.rb +80 -25
- data/lib/cosmos/tools/cmd_tlm_server/api.rb +19 -4
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server.rb +15 -14
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui.rb +15 -9
- data/lib/cosmos/tools/cmd_tlm_server/gui/interfaces_tab.rb +1 -9
- data/lib/cosmos/tools/cmd_tlm_server/gui/logging_tab.rb +1 -6
- data/lib/cosmos/tools/cmd_tlm_server/gui/packets_tab.rb +1 -3
- data/lib/cosmos/tools/cmd_tlm_server/gui/replay_tab.rb +84 -7
- data/lib/cosmos/tools/cmd_tlm_server/gui/status_tab.rb +0 -1
- data/lib/cosmos/tools/cmd_tlm_server/gui/targets_tab.rb +1 -5
- data/lib/cosmos/tools/cmd_tlm_server/limits_groups_background_task.rb +3 -2
- data/lib/cosmos/tools/cmd_tlm_server/replay_backend.rb +159 -27
- data/lib/cosmos/tools/cmd_tlm_server/routers.rb +1 -1
- data/lib/cosmos/tools/config_editor/config_editor.rb +17 -52
- data/lib/cosmos/tools/config_editor/config_editor_frame.rb +0 -5
- data/lib/cosmos/tools/data_viewer/data_viewer.rb +111 -0
- data/lib/cosmos/tools/limits_monitor/limits_monitor.rb +31 -18
- data/lib/cosmos/tools/packet_viewer/packet_viewer.rb +12 -3
- data/lib/cosmos/tools/script_runner/script_runner.rb +27 -14
- data/lib/cosmos/tools/script_runner/script_runner_frame.rb +104 -37
- data/lib/cosmos/tools/table_manager/table_config.rb +1 -1
- data/lib/cosmos/tools/table_manager/table_item_parser.rb +4 -2
- data/lib/cosmos/tools/table_manager/table_manager.rb +0 -5
- data/lib/cosmos/tools/table_manager/table_manager_core.rb +0 -1
- data/lib/cosmos/tools/test_runner/test.rb +1 -3
- data/lib/cosmos/tools/test_runner/test_runner.rb +26 -15
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor.rb +290 -137
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor_config.rb +122 -25
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor_processor.rb +67 -0
- data/lib/cosmos/tools/tlm_grapher/data_object_editors/housekeeping_data_object_editor.rb +28 -0
- data/lib/cosmos/tools/tlm_grapher/data_object_editors/xy_data_object_editor.rb +36 -0
- data/lib/cosmos/tools/tlm_grapher/data_objects/data_object.rb +42 -3
- data/lib/cosmos/tools/tlm_grapher/data_objects/housekeeping_data_object.rb +88 -14
- data/lib/cosmos/tools/tlm_grapher/data_objects/linegraph_data_object.rb +2 -5
- data/lib/cosmos/tools/tlm_grapher/data_objects/singlexy_data_object.rb +2 -6
- data/lib/cosmos/tools/tlm_grapher/data_objects/xy_data_object.rb +74 -18
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_config.rb +3 -7
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_dart_thread.rb +159 -0
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_tool.rb +49 -2
- data/lib/cosmos/tools/tlm_viewer/screen.rb +3 -0
- data/lib/cosmos/tools/tlm_viewer/tlm_viewer_config.rb +0 -2
- data/lib/cosmos/tools/tlm_viewer/widgets.rb +1 -0
- data/lib/cosmos/tools/tlm_viewer/widgets/backgroundbutton_widget.rb +54 -0
- data/lib/cosmos/tools/tlm_viewer/widgets/button_widget.rb +5 -5
- data/lib/cosmos/top_level.rb +1 -0
- data/lib/cosmos/utilities/crc.rb +3 -0
- data/lib/cosmos/utilities/csv.rb +1 -0
- data/lib/cosmos/utilities/message_log.rb +2 -1
- data/lib/cosmos/utilities/simulated_target.rb +8 -8
- data/lib/cosmos/version.rb +5 -5
- data/lib/cosmos/win32/win32.rb +4 -10
- data/run_gui_tests.bat +2 -1
- data/spec/config/config_parser_spec.rb +4 -4
- data/spec/core_ext/array_spec.rb +1 -1
- data/spec/core_ext/exception_spec.rb +12 -12
- data/spec/core_ext/file_spec.rb +6 -6
- data/spec/core_ext/hash_spec.rb +1 -1
- data/spec/core_ext/socket_spec.rb +2 -2
- data/spec/core_ext/string_spec.rb +13 -13
- data/spec/core_ext/time_spec.rb +0 -2
- data/spec/gui/utilities/script_module_gui_spec.rb +3 -3
- data/spec/install/config/targets/INST/cmd_tlm/inst_tlm.txt +6 -6
- data/spec/install/config/tools/cmd_tlm_server/cmd_tlm_server.txt +4 -0
- data/spec/interfaces/cmd_tlm_server_interface_spec.rb +6 -2
- data/spec/interfaces/interface_spec.rb +0 -1
- data/spec/interfaces/linc_interface_spec.rb +0 -5
- data/spec/interfaces/protocols/crc_protocol_spec.rb +201 -85
- data/spec/interfaces/protocols/fixed_protocol_spec.rb +33 -9
- data/spec/interfaces/protocols/length_protocol_spec.rb +1 -1
- data/spec/interfaces/protocols/override_protocol_spec.rb +6 -2
- data/spec/interfaces/protocols/preidentified_protocol_spec.rb +1 -5
- data/spec/interfaces/protocols/template_protocol_spec.rb +0 -1
- data/spec/interfaces/simulated_target_interface_spec.rb +5 -5
- data/spec/interfaces/udp_interface_spec.rb +2 -4
- data/spec/io/buffered_file_spec.rb +8 -12
- data/spec/io/json_drb_spec.rb +9 -9
- data/spec/io/json_rpc_spec.rb +4 -4
- data/spec/io/raw_logger_spec.rb +4 -3
- data/spec/packet_logs/packet_log_reader_spec.rb +3 -6
- data/spec/packet_logs/packet_log_writer_spec.rb +4 -4
- data/spec/packets/binary_accessor_spec.rb +5 -8
- data/spec/packets/commands_spec.rb +2 -2
- data/spec/packets/limits_spec.rb +2 -2
- data/spec/packets/packet_config_spec.rb +12 -0
- data/spec/packets/packet_item_limits_spec.rb +1 -1
- data/spec/packets/packet_item_spec.rb +9 -9
- data/spec/packets/packet_spec.rb +15 -5
- data/spec/packets/parsers/packet_item_parser_spec.rb +27 -0
- data/spec/packets/parsers/xtce_parser_spec.rb +27 -30
- data/spec/packets/structure_spec.rb +2 -1
- data/spec/packets/telemetry_spec.rb +3 -5
- data/spec/processors/statistics_processor_spec.rb +35 -0
- data/spec/script/cmd_tlm_server_spec.rb +4 -21
- data/spec/script/commands_disconnect_spec.rb +46 -58
- data/spec/script/commands_spec.rb +40 -61
- data/spec/script/limits_spec.rb +1 -21
- data/spec/script/script_spec.rb +32 -41
- data/spec/script/scripting_spec.rb +166 -185
- data/spec/script/telemetry_spec.rb +10 -5
- data/spec/script/tools_spec.rb +2 -24
- data/spec/spec_helper.rb +11 -5
- data/spec/system/system_spec.rb +17 -12
- data/spec/tools/cmd_tlm_server/api_spec.rb +21 -10
- data/spec/tools/cmd_tlm_server/background_tasks_spec.rb +15 -16
- data/spec/tools/cmd_tlm_server/cmd_tlm_server_config_spec.rb +0 -1
- data/spec/tools/cmd_tlm_server/cmd_tlm_server_spec.rb +16 -27
- data/spec/tools/cmd_tlm_server/commanding_spec.rb +2 -6
- data/spec/tools/cmd_tlm_server/connections_spec.rb +0 -4
- data/spec/tools/cmd_tlm_server/interface_thread_spec.rb +13 -13
- data/spec/tools/cmd_tlm_server/interfaces_spec.rb +5 -9
- data/spec/tools/cmd_tlm_server/limits_groups_background_task_spec.rb +11 -3
- data/spec/tools/cmd_tlm_server/packet_logging_spec.rb +0 -4
- data/spec/tools/cmd_tlm_server/router_thread_spec.rb +5 -5
- data/spec/tools/cmd_tlm_server/routers_spec.rb +5 -9
- data/spec/tools/table_manager/table_config_spec.rb +0 -1
- data/spec/tools/table_manager/tablemanager_core_spec.rb +23 -23
- data/spec/tools/tlm_viewer/tlm_viewer_config_spec.rb +6 -4
- data/spec/top_level/top_level_spec.rb +9 -9
- data/spec/utilities/csv_spec.rb +2 -12
- data/spec/utilities/logger_spec.rb +6 -6
- data/spec/utilities/message_log_spec.rb +3 -11
- data/tasks/gemfile_stats.rake +2 -2
- metadata +167 -60
|
@@ -10,30 +10,11 @@
|
|
|
10
10
|
|
|
11
11
|
require 'spec_helper'
|
|
12
12
|
require 'cosmos'
|
|
13
|
-
require 'cosmos/script
|
|
13
|
+
require 'cosmos/script'
|
|
14
14
|
require 'tempfile'
|
|
15
15
|
|
|
16
16
|
module Cosmos
|
|
17
|
-
|
|
18
17
|
describe Script do
|
|
19
|
-
|
|
20
|
-
before(:all) do
|
|
21
|
-
cts = File.join(Cosmos::USERPATH,'config','tools','cmd_tlm_server','cmd_tlm_server.txt')
|
|
22
|
-
FileUtils.mkdir_p(File.dirname(cts))
|
|
23
|
-
File.open(cts,'w') do |file|
|
|
24
|
-
file.puts 'INTERFACE INST_INT interface.rb'
|
|
25
|
-
file.puts 'TARGET INST'
|
|
26
|
-
end
|
|
27
|
-
System.class_eval('@@instance = nil')
|
|
28
|
-
|
|
29
|
-
require 'cosmos/script'
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
after(:all) do
|
|
33
|
-
clean_config()
|
|
34
|
-
FileUtils.rm_rf File.join(Cosmos::USERPATH,'config','tools')
|
|
35
|
-
end
|
|
36
|
-
|
|
37
18
|
before(:each) do
|
|
38
19
|
allow_any_instance_of(Interface).to receive(:connected?).and_return(true)
|
|
39
20
|
allow_any_instance_of(Interface).to receive(:disconnect)
|
|
@@ -150,9 +131,11 @@ module Cosmos
|
|
|
150
131
|
expect(interfaces).to include("INST_INT")
|
|
151
132
|
expect(cmd_logging).to eql true
|
|
152
133
|
expect(cmd_q_size).to be >= 0
|
|
134
|
+
expect(cmd_filename).to be nil # No commands yet so nil
|
|
153
135
|
expect(cmd_file_size).to be >= 0
|
|
154
136
|
expect(tlm_logging).to eql true
|
|
155
137
|
expect(tlm_q_size).to be >= 0
|
|
138
|
+
expect(tlm_filename).to be nil # No telemetry yet so nil
|
|
156
139
|
expect(tlm_file_size).to be >= 0
|
|
157
140
|
end
|
|
158
141
|
end
|
|
@@ -188,7 +171,7 @@ module Cosmos
|
|
|
188
171
|
start_new_server_message_log
|
|
189
172
|
sleep 0.1
|
|
190
173
|
filename = get_server_message_log_filename
|
|
191
|
-
expect(filename).to match
|
|
174
|
+
expect(filename).to match(/server_messages.txt/)
|
|
192
175
|
end
|
|
193
176
|
end
|
|
194
177
|
|
|
@@ -10,28 +10,20 @@
|
|
|
10
10
|
|
|
11
11
|
require 'spec_helper'
|
|
12
12
|
require 'cosmos'
|
|
13
|
-
require 'cosmos/script
|
|
13
|
+
require 'cosmos/script'
|
|
14
14
|
require 'tempfile'
|
|
15
15
|
|
|
16
16
|
module Cosmos
|
|
17
|
-
|
|
18
17
|
describe Script do
|
|
19
|
-
|
|
20
18
|
before(:all) do
|
|
21
|
-
cts = File.join(Cosmos::USERPATH,'config','tools','cmd_tlm_server','cmd_tlm_server.txt')
|
|
22
|
-
FileUtils.mkdir_p(File.dirname(cts))
|
|
23
|
-
File.open(cts,'w') do |file|
|
|
24
|
-
file.puts 'INTERFACE INST_INT interface.rb'
|
|
25
|
-
file.puts 'TARGET INST'
|
|
26
|
-
end
|
|
27
19
|
System.class_eval('@@instance = nil')
|
|
28
20
|
require 'cosmos/script'
|
|
29
|
-
|
|
21
|
+
set_disconnected_targets(['INST'])
|
|
30
22
|
end
|
|
31
23
|
|
|
32
24
|
after(:all) do
|
|
25
|
+
clear_disconnected_targets()
|
|
33
26
|
clean_config()
|
|
34
|
-
FileUtils.rm_rf File.join(Cosmos::USERPATH,'config','tools')
|
|
35
27
|
end
|
|
36
28
|
|
|
37
29
|
describe "require cosmos/script.rb" do
|
|
@@ -54,10 +46,10 @@ module Cosmos
|
|
|
54
46
|
it "sends a command" do
|
|
55
47
|
capture_io do |stdout|
|
|
56
48
|
cmd("INST ABORT")
|
|
57
|
-
expect(stdout.string).to match
|
|
49
|
+
expect(stdout.string).to match(/cmd\(\"INST ABORT\"\)/) #"
|
|
58
50
|
stdout.rewind
|
|
59
51
|
cmd("INST", "ABORT")
|
|
60
|
-
expect(stdout.string).to match
|
|
52
|
+
expect(stdout.string).to match(/cmd\(\"INST ABORT\"\)/) #"
|
|
61
53
|
end
|
|
62
54
|
end
|
|
63
55
|
|
|
@@ -70,16 +62,16 @@ module Cosmos
|
|
|
70
62
|
expect(self).to receive(:gets) { 'y' } # Send hazardous command
|
|
71
63
|
cmd("INST COLLECT with TYPE SPECIAL")
|
|
72
64
|
|
|
73
|
-
expect(stdout.string).to match
|
|
74
|
-
expect(stdout.string).to match
|
|
75
|
-
expect(stdout.string).to_not match
|
|
76
|
-
expect(stdout.string).to_not match
|
|
65
|
+
expect(stdout.string).to match(/cmd\(\"INST COLLECT/) # "
|
|
66
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
67
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring range checks")
|
|
68
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
77
69
|
stdout.rewind
|
|
78
70
|
|
|
79
71
|
expect(self).to receive(:gets) { 'n' } # Don't send hazardous
|
|
80
72
|
expect(self).to receive(:gets) { 'y' } # Stop running script
|
|
81
73
|
cmd("INST COLLECT with TYPE SPECIAL")
|
|
82
|
-
expect(stdout.string).to match
|
|
74
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
83
75
|
end
|
|
84
76
|
end
|
|
85
77
|
end
|
|
@@ -94,16 +86,16 @@ module Cosmos
|
|
|
94
86
|
expect(self).to receive(:gets) { 'y' } # Send hazardous command
|
|
95
87
|
cmd_no_range_check("INST COLLECT with TYPE SPECIAL")
|
|
96
88
|
|
|
97
|
-
expect(stdout.string).to match
|
|
98
|
-
expect(stdout.string).to match
|
|
99
|
-
expect(stdout.string).to match
|
|
100
|
-
expect(stdout.string).to_not match
|
|
89
|
+
expect(stdout.string).to match(/cmd\(\"INST COLLECT/) # "
|
|
90
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
91
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring range checks")
|
|
92
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
101
93
|
stdout.rewind
|
|
102
94
|
|
|
103
95
|
expect(self).to receive(:gets) { 'n' } # Don't send hazardous
|
|
104
96
|
expect(self).to receive(:gets) { 'y' } # Stop running script
|
|
105
97
|
cmd_no_range_check("INST COLLECT with TYPE SPECIAL")
|
|
106
|
-
expect(stdout.string).to match
|
|
98
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
107
99
|
end
|
|
108
100
|
end
|
|
109
101
|
end
|
|
@@ -117,10 +109,10 @@ module Cosmos
|
|
|
117
109
|
capture_io do |stdout|
|
|
118
110
|
cmd_no_hazardous_check("INST COLLECT with TYPE SPECIAL")
|
|
119
111
|
|
|
120
|
-
expect(stdout.string).to match
|
|
121
|
-
expect(stdout.string).to_not match
|
|
122
|
-
expect(stdout.string).to_not match
|
|
123
|
-
expect(stdout.string).to match
|
|
112
|
+
expect(stdout.string).to match(/cmd\(\"INST COLLECT/) # "
|
|
113
|
+
expect(stdout.string).to_not match("Warning: Command INST COLLECT is Hazardous")
|
|
114
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring range checks")
|
|
115
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
124
116
|
end
|
|
125
117
|
end
|
|
126
118
|
end
|
|
@@ -130,10 +122,10 @@ module Cosmos
|
|
|
130
122
|
capture_io do |stdout|
|
|
131
123
|
cmd_no_checks("INST COLLECT with TYPE SPECIAL, DURATION 20")
|
|
132
124
|
|
|
133
|
-
expect(stdout.string).to match
|
|
134
|
-
expect(stdout.string).to_not match
|
|
135
|
-
expect(stdout.string).to match
|
|
136
|
-
expect(stdout.string).to match
|
|
125
|
+
expect(stdout.string).to match(/cmd\(\"INST COLLECT/) # "
|
|
126
|
+
expect(stdout.string).to_not match("Warning: Command INST COLLECT is Hazardous")
|
|
127
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring range checks")
|
|
128
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
137
129
|
end
|
|
138
130
|
end
|
|
139
131
|
end
|
|
@@ -142,7 +134,7 @@ module Cosmos
|
|
|
142
134
|
it "sends a command" do
|
|
143
135
|
capture_io do |stdout|
|
|
144
136
|
cmd_raw("INST ABORT")
|
|
145
|
-
expect(stdout.string).to match
|
|
137
|
+
expect(stdout.string).to match(/cmd_raw\(\"INST ABORT\"\)/) # "
|
|
146
138
|
end
|
|
147
139
|
end
|
|
148
140
|
|
|
@@ -155,16 +147,16 @@ module Cosmos
|
|
|
155
147
|
expect(self).to receive(:gets) { 'y' } # Send hazardous command
|
|
156
148
|
cmd_raw("INST COLLECT with TYPE 1")
|
|
157
149
|
|
|
158
|
-
expect(stdout.string).to match
|
|
159
|
-
expect(stdout.string).to match
|
|
160
|
-
expect(stdout.string).to_not match
|
|
161
|
-
expect(stdout.string).to_not match
|
|
150
|
+
expect(stdout.string).to match(/cmd_raw\(\"INST COLLECT/) # "
|
|
151
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
152
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring range checks")
|
|
153
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
162
154
|
stdout.rewind
|
|
163
155
|
|
|
164
156
|
expect(self).to receive(:gets) { 'n' } # Don't send hazardous
|
|
165
157
|
expect(self).to receive(:gets) { 'y' } # Stop running script
|
|
166
158
|
cmd_raw("INST COLLECT with TYPE 1")
|
|
167
|
-
expect(stdout.string).to match
|
|
159
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
168
160
|
end
|
|
169
161
|
end
|
|
170
162
|
end
|
|
@@ -179,16 +171,16 @@ module Cosmos
|
|
|
179
171
|
expect(self).to receive(:gets) { 'y' } # Send hazardous command
|
|
180
172
|
cmd_raw_no_range_check("INST COLLECT with TYPE 1")
|
|
181
173
|
|
|
182
|
-
expect(stdout.string).to match
|
|
183
|
-
expect(stdout.string).to match
|
|
184
|
-
expect(stdout.string).to match
|
|
185
|
-
expect(stdout.string).to_not match
|
|
174
|
+
expect(stdout.string).to match(/cmd_raw\(\"INST COLLECT/) # "
|
|
175
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
176
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring range checks")
|
|
177
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
186
178
|
stdout.rewind
|
|
187
179
|
|
|
188
180
|
expect(self).to receive(:gets) { 'n' } # Don't send hazardous
|
|
189
181
|
expect(self).to receive(:gets) { 'y' } # Stop running script
|
|
190
182
|
cmd_raw_no_range_check("INST COLLECT with TYPE 1")
|
|
191
|
-
expect(stdout.string).to match
|
|
183
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
192
184
|
end
|
|
193
185
|
end
|
|
194
186
|
end
|
|
@@ -201,10 +193,10 @@ module Cosmos
|
|
|
201
193
|
it "sends a hazardous command without prompting" do
|
|
202
194
|
capture_io do |stdout|
|
|
203
195
|
cmd_raw_no_hazardous_check("INST COLLECT with TYPE 1")
|
|
204
|
-
expect(stdout.string).to match
|
|
205
|
-
expect(stdout.string).to_not match
|
|
206
|
-
expect(stdout.string).to_not match
|
|
207
|
-
expect(stdout.string).to match
|
|
196
|
+
expect(stdout.string).to match(/cmd_raw\(\"INST COLLECT/) #"
|
|
197
|
+
expect(stdout.string).to_not match("Warning: Command INST COLLECT is Hazardous")
|
|
198
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring range checks")
|
|
199
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
208
200
|
end
|
|
209
201
|
end
|
|
210
202
|
end
|
|
@@ -213,30 +205,27 @@ module Cosmos
|
|
|
213
205
|
it "sends an out of range hazardous command without prompting" do
|
|
214
206
|
capture_io do |stdout|
|
|
215
207
|
cmd_raw_no_checks("INST COLLECT with TYPE 1, DURATION 20")
|
|
216
|
-
expect(stdout.string).to match
|
|
217
|
-
expect(stdout.string).to_not match
|
|
218
|
-
expect(stdout.string).to match
|
|
219
|
-
expect(stdout.string).to match
|
|
208
|
+
expect(stdout.string).to match(/cmd_raw\(\"INST COLLECT/) #"
|
|
209
|
+
expect(stdout.string).to_not match("Warning: Command INST COLLECT is Hazardous")
|
|
210
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring range checks")
|
|
211
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
220
212
|
end
|
|
221
213
|
end
|
|
222
214
|
end
|
|
223
215
|
|
|
224
216
|
describe "send_raw" do
|
|
225
|
-
it "
|
|
226
|
-
|
|
227
|
-
send_raw('INST_INT', '\x00')
|
|
217
|
+
it "uses the JsonDRbObject and is not disconnected" do
|
|
218
|
+
expect { send_raw('INST_INT', '\x00') }.to raise_error(DRb::DRbConnError)
|
|
228
219
|
end
|
|
229
220
|
end
|
|
230
221
|
|
|
231
222
|
describe "send_raw_file" do
|
|
232
|
-
it "
|
|
223
|
+
it "uses the JsonDRbObject and is not disconnected" do
|
|
233
224
|
file = File.open('raw_test_file.bin','wb')
|
|
234
225
|
file.write '\x00\x01\x02\x03'
|
|
235
226
|
file.close
|
|
236
227
|
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
send_raw_file('INST_INT', 'raw_test_file.bin')
|
|
228
|
+
expect { send_raw_file('INST_INT', 'raw_test_file.bin') }.to raise_error(DRb::DRbConnError)
|
|
240
229
|
|
|
241
230
|
File.delete('raw_test_file.bin')
|
|
242
231
|
end
|
|
@@ -267,4 +256,3 @@ module Cosmos
|
|
|
267
256
|
|
|
268
257
|
end
|
|
269
258
|
end
|
|
270
|
-
|
|
@@ -10,30 +10,11 @@
|
|
|
10
10
|
|
|
11
11
|
require 'spec_helper'
|
|
12
12
|
require 'cosmos'
|
|
13
|
-
require 'cosmos/script
|
|
13
|
+
require 'cosmos/script'
|
|
14
14
|
require 'tempfile'
|
|
15
15
|
|
|
16
16
|
module Cosmos
|
|
17
|
-
|
|
18
17
|
describe Script do
|
|
19
|
-
|
|
20
|
-
before(:all) do
|
|
21
|
-
cts = File.join(Cosmos::USERPATH,'config','tools','cmd_tlm_server','cmd_tlm_server.txt')
|
|
22
|
-
FileUtils.mkdir_p(File.dirname(cts))
|
|
23
|
-
File.open(cts,'w') do |file|
|
|
24
|
-
file.puts 'INTERFACE INST_INT interface.rb'
|
|
25
|
-
file.puts 'TARGET INST'
|
|
26
|
-
end
|
|
27
|
-
System.class_eval('@@instance = nil')
|
|
28
|
-
|
|
29
|
-
require 'cosmos/script'
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
after(:all) do
|
|
33
|
-
clean_config()
|
|
34
|
-
FileUtils.rm_rf File.join(Cosmos::USERPATH,'config','tools')
|
|
35
|
-
end
|
|
36
|
-
|
|
37
18
|
before(:each) do
|
|
38
19
|
allow_any_instance_of(Interface).to receive(:connected?).and_return(true)
|
|
39
20
|
allow_any_instance_of(Interface).to receive(:disconnect)
|
|
@@ -72,10 +53,10 @@ module Cosmos
|
|
|
72
53
|
it "sends a command" do
|
|
73
54
|
capture_io do |stdout|
|
|
74
55
|
cmd("INST ABORT")
|
|
75
|
-
expect(stdout.string).to match
|
|
56
|
+
expect(stdout.string).to match(/cmd\(\"INST ABORT\"\)/) #"
|
|
76
57
|
stdout.rewind
|
|
77
58
|
cmd("INST", "ABORT")
|
|
78
|
-
expect(stdout.string).to match
|
|
59
|
+
expect(stdout.string).to match(/cmd\(\"INST ABORT\"\)/) #"
|
|
79
60
|
end
|
|
80
61
|
end
|
|
81
62
|
|
|
@@ -88,16 +69,16 @@ module Cosmos
|
|
|
88
69
|
expect(self).to receive(:gets) { 'y' } # Send hazardous command
|
|
89
70
|
cmd("INST COLLECT with TYPE SPECIAL")
|
|
90
71
|
|
|
91
|
-
expect(stdout.string).to match
|
|
92
|
-
expect(stdout.string).to match
|
|
93
|
-
expect(stdout.string).to_not match
|
|
94
|
-
expect(stdout.string).to_not match
|
|
72
|
+
expect(stdout.string).to match(/cmd\(\"INST COLLECT/) #"
|
|
73
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
74
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring range checks")
|
|
75
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
95
76
|
stdout.rewind
|
|
96
77
|
|
|
97
78
|
expect(self).to receive(:gets) { 'n' } # Don't send hazardous
|
|
98
79
|
expect(self).to receive(:gets) { 'y' } # Stop running script
|
|
99
80
|
cmd("INST COLLECT with TYPE SPECIAL")
|
|
100
|
-
expect(stdout.string).to match
|
|
81
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
101
82
|
end
|
|
102
83
|
end
|
|
103
84
|
end
|
|
@@ -112,16 +93,16 @@ module Cosmos
|
|
|
112
93
|
expect(self).to receive(:gets) { 'y' } # Send hazardous command
|
|
113
94
|
cmd_no_range_check("INST COLLECT with TYPE SPECIAL")
|
|
114
95
|
|
|
115
|
-
expect(stdout.string).to match
|
|
116
|
-
expect(stdout.string).to match
|
|
117
|
-
expect(stdout.string).to match
|
|
118
|
-
expect(stdout.string).to_not match
|
|
96
|
+
expect(stdout.string).to match(/cmd\(\"INST COLLECT/) #"
|
|
97
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
98
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring range checks")
|
|
99
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
119
100
|
stdout.rewind
|
|
120
101
|
|
|
121
102
|
expect(self).to receive(:gets) { 'n' } # Don't send hazardous
|
|
122
103
|
expect(self).to receive(:gets) { 'y' } # Stop running script
|
|
123
104
|
cmd_no_range_check("INST COLLECT with TYPE SPECIAL")
|
|
124
|
-
expect(stdout.string).to match
|
|
105
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
125
106
|
end
|
|
126
107
|
end
|
|
127
108
|
end
|
|
@@ -135,10 +116,10 @@ module Cosmos
|
|
|
135
116
|
capture_io do |stdout|
|
|
136
117
|
cmd_no_hazardous_check("INST COLLECT with TYPE SPECIAL")
|
|
137
118
|
|
|
138
|
-
expect(stdout.string).to match
|
|
139
|
-
expect(stdout.string).to_not match
|
|
140
|
-
expect(stdout.string).to_not match
|
|
141
|
-
expect(stdout.string).to match
|
|
119
|
+
expect(stdout.string).to match(/cmd\(\"INST COLLECT/) #"
|
|
120
|
+
expect(stdout.string).to_not match("Warning: Command INST COLLECT is Hazardous")
|
|
121
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring range checks")
|
|
122
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
142
123
|
end
|
|
143
124
|
end
|
|
144
125
|
end
|
|
@@ -148,10 +129,10 @@ module Cosmos
|
|
|
148
129
|
capture_io do |stdout|
|
|
149
130
|
cmd_no_checks("INST COLLECT with TYPE SPECIAL, DURATION 20")
|
|
150
131
|
|
|
151
|
-
expect(stdout.string).to match
|
|
152
|
-
expect(stdout.string).to_not match
|
|
153
|
-
expect(stdout.string).to match
|
|
154
|
-
expect(stdout.string).to match
|
|
132
|
+
expect(stdout.string).to match(/cmd\(\"INST COLLECT/) #"
|
|
133
|
+
expect(stdout.string).to_not match("Warning: Command INST COLLECT is Hazardous")
|
|
134
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring range checks")
|
|
135
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
155
136
|
end
|
|
156
137
|
end
|
|
157
138
|
end
|
|
@@ -160,7 +141,7 @@ module Cosmos
|
|
|
160
141
|
it "sends a command" do
|
|
161
142
|
capture_io do |stdout|
|
|
162
143
|
cmd_raw("INST ABORT")
|
|
163
|
-
expect(stdout.string).to match
|
|
144
|
+
expect(stdout.string).to match(/cmd_raw\(\"INST ABORT\"\)/) #"
|
|
164
145
|
end
|
|
165
146
|
end
|
|
166
147
|
|
|
@@ -173,16 +154,16 @@ module Cosmos
|
|
|
173
154
|
expect(self).to receive(:gets) { 'y' } # Send hazardous command
|
|
174
155
|
cmd_raw("INST COLLECT with TYPE 1")
|
|
175
156
|
|
|
176
|
-
expect(stdout.string).to match
|
|
177
|
-
expect(stdout.string).to match
|
|
178
|
-
expect(stdout.string).to_not match
|
|
179
|
-
expect(stdout.string).to_not match
|
|
157
|
+
expect(stdout.string).to match(/cmd_raw\(\"INST COLLECT/) #"
|
|
158
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
159
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring range checks")
|
|
160
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
180
161
|
stdout.rewind
|
|
181
162
|
|
|
182
163
|
expect(self).to receive(:gets) { 'n' } # Don't send hazardous
|
|
183
164
|
expect(self).to receive(:gets) { 'y' } # Stop running script
|
|
184
165
|
cmd_raw("INST COLLECT with TYPE 1")
|
|
185
|
-
expect(stdout.string).to match
|
|
166
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
186
167
|
end
|
|
187
168
|
end
|
|
188
169
|
end
|
|
@@ -197,16 +178,16 @@ module Cosmos
|
|
|
197
178
|
expect(self).to receive(:gets) { 'y' } # Send hazardous command
|
|
198
179
|
cmd_raw_no_range_check("INST COLLECT with TYPE 1")
|
|
199
180
|
|
|
200
|
-
expect(stdout.string).to match
|
|
201
|
-
expect(stdout.string).to match
|
|
202
|
-
expect(stdout.string).to match
|
|
203
|
-
expect(stdout.string).to_not match
|
|
181
|
+
expect(stdout.string).to match(/cmd_raw\(\"INST COLLECT/) #"
|
|
182
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
183
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring range checks")
|
|
184
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
204
185
|
stdout.rewind
|
|
205
186
|
|
|
206
187
|
expect(self).to receive(:gets) { 'n' } # Don't send hazardous
|
|
207
188
|
expect(self).to receive(:gets) { 'y' } # Stop running script
|
|
208
189
|
cmd_raw_no_range_check("INST COLLECT with TYPE 1")
|
|
209
|
-
expect(stdout.string).to match
|
|
190
|
+
expect(stdout.string).to match("Warning: Command INST COLLECT is Hazardous")
|
|
210
191
|
end
|
|
211
192
|
end
|
|
212
193
|
end
|
|
@@ -219,10 +200,10 @@ module Cosmos
|
|
|
219
200
|
it "sends a hazardous command without prompting" do
|
|
220
201
|
capture_io do |stdout|
|
|
221
202
|
cmd_raw_no_hazardous_check("INST COLLECT with TYPE 1")
|
|
222
|
-
expect(stdout.string).to match
|
|
223
|
-
expect(stdout.string).to_not match
|
|
224
|
-
expect(stdout.string).to_not match
|
|
225
|
-
expect(stdout.string).to match
|
|
203
|
+
expect(stdout.string).to match(/cmd_raw\(\"INST COLLECT/) #"
|
|
204
|
+
expect(stdout.string).to_not match("Warning: Command INST COLLECT is Hazardous")
|
|
205
|
+
expect(stdout.string).to_not match("Command INST COLLECT being sent ignoring range checks")
|
|
206
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
226
207
|
end
|
|
227
208
|
end
|
|
228
209
|
end
|
|
@@ -231,10 +212,10 @@ module Cosmos
|
|
|
231
212
|
it "sends an out of range hazardous command without prompting" do
|
|
232
213
|
capture_io do |stdout|
|
|
233
214
|
cmd_raw_no_checks("INST COLLECT with TYPE 1, DURATION 20")
|
|
234
|
-
expect(stdout.string).to match
|
|
235
|
-
expect(stdout.string).to_not match
|
|
236
|
-
expect(stdout.string).to match
|
|
237
|
-
expect(stdout.string).to match
|
|
215
|
+
expect(stdout.string).to match(/cmd_raw\(\"INST COLLECT/) #"
|
|
216
|
+
expect(stdout.string).to_not match("Warning: Command INST COLLECT is Hazardous")
|
|
217
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring range checks")
|
|
218
|
+
expect(stdout.string).to match("Command INST COLLECT being sent ignoring hazardous warnings")
|
|
238
219
|
end
|
|
239
220
|
end
|
|
240
221
|
end
|
|
@@ -272,7 +253,6 @@ module Cosmos
|
|
|
272
253
|
describe "get_cmd_param_list" do
|
|
273
254
|
it "returns all the parameters for a command" do
|
|
274
255
|
list = get_cmd_param_list("INST", "COLLECT")
|
|
275
|
-
#puts list
|
|
276
256
|
expect(list).to include(["TYPE", 0, {"NORMAL"=>0, "SPECIAL"=>1}, "Collect type", nil, nil, true, "UINT"])
|
|
277
257
|
end
|
|
278
258
|
end
|
|
@@ -301,4 +281,3 @@ module Cosmos
|
|
|
301
281
|
|
|
302
282
|
end
|
|
303
283
|
end
|
|
304
|
-
|