Requirements and Specification
System Requirements
lobster/tools/trlc/input_files.trlc
TRLC System_requirement trlc_req.Input_List_Of_Files
IF the list elements given through the config option "inputs" are files with extension rsl and trlc, THEN all files given in "inputs" parameter shall be consumed.
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
TRLC System_requirement_aspect trlc_req.Duplicate_Input_List_Of_Files
IF the [[Input_List_Of_Files]] are files with duplicate definitions. THEN "duplicate_definition" error must be produced.
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
TRLC System_requirement_aspect trlc_req.Invalid_Inputs_List_Of_Files_Extensions
IF the [[Input_List_Of_Files]] are with invalid extensions, THEN tool shall raise an error.
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
TRLC System_requirement trlc_req.Inputs_From_File
IF the element given through the config option "inputs_from_file" is a file, THEN each line in that file shall be interpreted as a path AND shall be consumed.
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
TRLC System_requirement_aspect trlc_req.Duplicate_Inputs_From_File
IF the [[Inputs_From_File]] has files that contain duplicate definitions, THEN "duplicate_definition" error must be produced.
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
TRLC System_requirement_aspect trlc_req.Invalid_Inputs_From_File_Extensions
IF the [[Inputs_From_File]] has files with invalid extensions, THEN tool shall raise an error.
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
TRLC System_requirement trlc_req.Input_list_Of_File_And_Inputs_From_File
IF both the config options [[Input_List_Of_Files]] AND [[Inputs_From_File]] are provided, THEN all files given in [[Input_List_Of_Files]] AND [[Inputs_From_File]] parameter shall be consumed.
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
TRLC System_requirement_aspect trlc_req.Duplicate_Input_list_Of_File_And_Inputs_From_File
IF both the config options [[Input_List_Of_Files]] AND [[Inputs_From_File]] has duplicate definitions, THEN "duplicate_definition" error must be produced.
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
TRLC System_requirement_aspect trlc_req.No_Inputs_And_No_Inputs_From_File
OTHERWISE, IF both the config options [[Input_List_Of_Files]] AND [[Inputs_From_File]] are not provided, THEN all .rsl and .trlc files in current directory shall be scanned recursively and consumed.
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
lobster/tools/trlc/requirements.trlc
TRLC System_requirement trlc_req.Output_File
If a output file is specified as command line argument, then the output must be written into that file. Otherwise, the output shall be written to 'trlc.lobster'.
Issues:
missing reference to System Test
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Software Requirements
No items recorded at this level.
Implementation
Code
lobster/tools/trlc/trlc.py
Python Constructor trlc.Config_Parser.__init__
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.Config_Parser.generate_lobster_object
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.Config_Parser.generate_text
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.Config_Parser.parse_config_file
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.Config_Parser.build_config
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.Config_Parser.parse_record_type
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.Config_Parser.parse_text_generator
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.Config_Parser.parse_tuple_type
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.Config_Parser.parse_directive
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Constructor trlc.LOBSTER_Trlc.__init__
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.LOBSTER_Trlc.get_config_keys_manual
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.LOBSTER_Trlc.get_mandatory_parameters
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.LOBSTER_Trlc.process_commandline_and_yaml_options
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.LOBSTER_Trlc.process_tool_options
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Method trlc.LOBSTER_Trlc.execute
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Python Function trlc.main
Issues:
unknown tracing target req trlc_req.Dummy_Requirement
missing up reference
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Verification and Validation
System Test
tests-system/lobster-trlc/lobster_trlc_test_runner.py
PyUnit Test lobster_trlc_test_runner.LobsterTrlcTestRunner.run_tool_test:95
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
tests-system/lobster-trlc/test_input_invalid_extensions.py
PyUnit Test test_input_invalid_extensions.TrlcInvalidExtensionsTest.test_invalid_extensions_inputs_files_list:12
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_input_invalid_extensions.TrlcInvalidExtensionsTest.test_invalid_extensions_input_from_file:33
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
tests-system/lobster-trlc/test_input_list_of_files.py
PyUnit Test test_input_list_of_files.InputListOfFilesTest.test_input_files_list:14
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_input_list_of_files.InputListOfFilesTest.test_duplicate_input_files_list:27
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
tests-system/lobster-trlc/test_inputs_and_inputs_from_file.py
PyUnit Test test_inputs_and_inputs_from_file.InputFromFilesAndInputsTest.test_input_from_files_and_inputs_list:14
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_inputs_and_inputs_from_file.InputFromFilesAndInputsTest.test_duplicate_contents_input_from_files_and_inputs_list:30
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
tests-system/lobster-trlc/test_inputs_from_file.py
PyUnit Test test_inputs_from_file.InputFromFilesTest.test_input_from_files:12
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_inputs_from_file.InputFromFilesTest.test_input_from_files_duplicate_contents:28
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
tests-system/lobster-trlc/test_inputs_from_working_directory.py
PyUnit Test test_inputs_from_working_directory.InputFromWorkingDirectory.test_input_from_working_directory:12
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
Software Test
tests-unit/lobster-trlc/test_trlc.py
PyUnit Test test_trlc.LobsterTrlcTests.test_generate_lobster_object_trace_false:27
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_trlc.LobsterTrlcTests.test_generate_lobster_object_trace_true_single_description:36
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_trlc.LobsterTrlcTests.test_generate_lobster_object_trace_true_multiple_description:68
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_trlc.LobsterTrlcTests.test_generate_lobster_object_trace_true_with_tag_field:106
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_trlc.LobsterTrlcTests.test_generate_lobster_object_trace_true_with_just_up_field:138
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_trlc.LobsterTrlcTests.test_generate_text_with_undefined_tuple_type:167
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_trlc.LobsterTrlcTests.test_generate_text_with_non_tuple_type:178
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_trlc.LobsterTrlcTests.test_generate_text_with_valid_tuple_type:184
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00
PyUnit Test test_trlc.LobsterTrlcTests.test_generate_text_with_invalid_tuple_type:198
Build Reference: 1083b4e668b60a00d05d8ab710726d39582d7caf | Timestamp: 2025-06-26 14:53:54+00:00