Requirements and Specification
System Requirements
lobster/tools/cpptest/input_files.trlc
TRLC System_requirement cpptest_req.Input_File
IF a list element given through the yaml config file option "files" is a file
Issues:
missing reference to System Test
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
TRLC System_requirement_aspect cpptest_req.Input_File_Valid_Cpp_Test_File
AND IF the file content is valid, THEN the tool shall write the output in the LOBSTER interchange format to the file given in the out parameter AND exit with a zero return code.
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
TRLC System_requirement_aspect cpptest_req.Input_File_Invalid_Cpp_Test_File
OTHERWISE IF the file content is invalid, THEN the tool shall write an error message to stderr AND exit with a non-zero return code.
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Software Requirements
lobster/tools/cpptest/requirements.trlc
TRLC Software_requirement cpptest_req.Dummy_Requirement
This is not really a requirement. It will be used only to generate a minimal tracing report for each tool. It can be deleted as soon as all the tools get their real requirements.
Issues:
missing reference to Code
missing reference to Software Test
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
TRLC Software_requirement cpptest_req.Dummy_Requirement_Unit_Test
This is not really a requirement. It will be used only to generate a minimal tracing report for each tool. It can be deleted as soon as all the tools get their real requirements.
Issues:
missing reference to Code
missing reference to Software Test
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Implementation
Code
lobster/tools/cpptest/cpptest.py
Python Function cpptest.parse_config_file
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Function cpptest.get_test_file_list
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Function cpptest.collect_test_cases_from_test_files
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Function cpptest.create_lobster_items_output_dict_from_test_cases
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Function cpptest.write_lobster_items_output_dict
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Function cpptest.lobster_cpptest
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Constructor cpptest.CppTestTool.__init__
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method cpptest.CppTestTool._run_impl
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Function cpptest.main
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
lobster/tools/cpptest/parser/constants.py
Python Constructor constants.Constants.__init__
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
lobster/tools/cpptest/parser/requirements_parser.py
Python Method requirements_parser.ParserForRequirements.collect_test_cases_for_test_files
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method requirements_parser.ParserForRequirements.collect_test_cases
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
lobster/tools/cpptest/parser/test_case.py
Python Constructor test_case.TestCase.__init__
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._set_test_details
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._definition_end
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._set_test_and_suite_name
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._set_base_attributes
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._get_requirements_from_docu_lines
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._get_testmethod_tag
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._get_version_tag
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._add_multiline_attribute
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase.is_line_commented
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase.has_no_macro_or_commented
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase.has_no_macro_or_commented_general
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase.is_special_case
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase.try_parse
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase.try_parse_general
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._get_uri_from_requirement_detection
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._add_new_requirement_to_requirement_list
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase._get_require_tags
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase.notracing_special_case
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Python Method test_case.TestCase.get_range_for_doxygen_comments
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Verification and Validation
System Test
tests_system/lobster_cpptest/test_config_exceptions.py
PyUnit Test test_config_exceptions.ConfigParserExceptionsCpptestTest.test_missing_config_file:12
Issues:
unknown tracing target req UseCases.Config_File_Missing
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_config_exceptions.ConfigParserExceptionsCpptestTest.test_config_file_errors:28
Issues:
unknown tracing target req UseCases.Config_File_Key_Error
unknown tracing target req UseCases.Config_File_Syntax_Error
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
tests_system/lobster_cpptest/test_directories.py
PyUnit Test test_directories.DirectoriesCpptestTest.test_all_files_from_current_directory_consumed:14
Issues:
unknown tracing target req Usecases.Incorrect_Number_of_Cpp_Tests_in_Output
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_directories.DirectoriesCpptestTest.test_files_from_specified_directory_consumed:50
Issues:
unknown tracing target req Usecases.Incorrect_Number_of_Cpp_Tests_in_Output
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_directories.DirectoriesCpptestTest.test_specified_directory_and_files_consumed:80
Issues:
unknown tracing target req Usecases.Incorrect_Number_of_Cpp_Tests_in_Output
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_directories.DirectoriesCpptestTest.test_no_cpptest_file:113
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
tests_system/lobster_cpptest/test_extension.py
PyUnit Test test_extension.ExtensionCpptestTest.test_valid_extension_file:15
Issues:
unknown tracing target req Usecases.Incorrect_number_of_requirement_references_in_Output
unknown tracing target req Usecases.Incorrect_Number_of_Cpp_Tests_in_Output
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_extension.ExtensionCpptestTest.test_invalid_extension_file:42
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_extension.ExtensionCpptestTest.test_no_input_file:67
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
tests_system/lobster_cpptest/test_multiple_files.py
PyUnit Test test_multiple_files.MultipleFilesCpptestTest.test_multiple_files:15
Issues:
unknown tracing target req Usecases.Incorrect_number_of_requirement_references_in_Output
unknown tracing target req Usecases.Incorrect_Number_of_Cpp_Tests_in_Output
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_multiple_files.MultipleFilesCpptestTest.test_multiple_valid_invalid_files:50
Issues:
unknown tracing target req Usecases.Incorrect_number_of_requirement_references_in_Output
unknown tracing target req Usecases.Incorrect_Number_of_Cpp_Tests_in_Output
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_multiple_files.MultipleFilesCpptestTest.test_no_input_file:85
Issues:
unknown tracing target req Usecases.Incorrect_Number_of_Cpp_Tests_in_Output
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
tests_system/lobster_cpptest/test_references.py
PyUnit Test test_references.ReferencesCpptestTest.test_no_references_cpptest_file:15
Issues:
unknown tracing target req UseCases.Incorrect_number_of_requirement_references_in_Output
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_references.ReferencesCpptestTest.test_one_reference_in_cpptest_file:39
Issues:
unknown tracing target req UseCases.Incorrect_number_of_requirement_references_in_Output
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_references.ReferencesCpptestTest.test_many_references_in_cpptest_file:63
Issues:
unknown tracing target req UseCases.Incorrect_number_of_requirement_references_in_Output
missing up reference
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
tests_system/lobster_cpptest/test_valid_scenario.py
PyUnit Test test_valid_scenario.InputFileCpptestTest.test_valid_input_cpptest_file:14
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
Software Test
tests_unit/lobster_cpptest/test_cpptest.py
PyUnit Test test_cpptest.LobsterCpptestTests.test_collect_test_cases_from_test_files:57
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_cpptest.LobsterCpptestTests.test_parse_config_file_with_two_markers_for_two_outputs:71
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_cpptest.LobsterCpptestTests.test_parse_config_file_with_two_markers_for_one_output:121
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_cpptest.LobsterCpptestTests.test_get_test_file_list:153
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_cpptest.LobsterCpptestTests.test_get_test_file_list_no_file_with_matching_extension:168
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_cpptest.LobsterCpptestTests.test_get_test_file_list_not_existing_file_dir:184
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_cpptest.LobsterCpptestTests.test_single_file:200
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_cpptest.LobsterCpptestTests.test_single_directory:236
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_cpptest.LobsterCpptestTests.test_not_existing_file_dir:263
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_cpptest.LobsterCpptestTests.test_separate_output_config:294
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC
PyUnit Test test_cpptest.LobsterCpptestTests.test_test_case_parsing:395
Build Reference: f8fd7fec387000b9da849c4c0ec20550b9334106 | Timestamp: 2025-08-05 14:16:58+00:00 UTC