testbench2robotframework 0.8.0a4__tar.gz → 0.8.0a5__tar.gz

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 (58) hide show
  1. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/PKG-INFO +1 -1
  2. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/__init__.py +1 -1
  3. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/json_reader.py +2 -0
  4. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/testbench2rf.py +6 -0
  5. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/utils.py +4 -0
  6. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/.gitignore +0 -0
  7. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/CreatePiPWheel.bat +0 -0
  8. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/CreatePiPWheel.sh +0 -0
  9. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/DEVELOPMENT.md +0 -0
  10. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/ExampleConfiguration/json_config.json +0 -0
  11. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/ExampleConfiguration/pyproject_example.toml +0 -0
  12. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/ExampleConfiguration/toml_config.toml +0 -0
  13. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/LICENSE +0 -0
  14. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/MANIFEST.in +0 -0
  15. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/README.md +0 -0
  16. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/atest/json_config_tests/1_tfs.robot +0 -0
  17. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/atest/robot/libs/json_config.py +0 -0
  18. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/atest/robot/libs/pyproject_config.py +0 -0
  19. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/atest/robot/resources/file_management.resource +0 -0
  20. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/atest/robot/resources/testbench2robotframework_cli.resource +0 -0
  21. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/atest/robot/rf_tests/cli_interface/write/json_config.robot +0 -0
  22. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/atest/robot/rf_tests/cli_interface/write/no_config_argument.robot +0 -0
  23. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/atest/robot/rf_tests/cli_interface/write/toml_config.robot +0 -0
  24. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/create_json_schema.py +0 -0
  25. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/images/LibrarySubdivision.PNG +0 -0
  26. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/images/Unbenannt.PNG +0 -0
  27. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/images/generated.png +0 -0
  28. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/images/libraries.PNG +0 -0
  29. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/images/resources.PNG +0 -0
  30. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/images/rfLibraryRootsTestBench.PNG +0 -0
  31. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/images/testbench_rfLibraryRegex.PNG +0 -0
  32. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/images/testbench_rfResourceRegex.PNG +0 -0
  33. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/images/testthemen.PNG +0 -0
  34. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/oldModel.py +0 -0
  35. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/pydantic_model.py +0 -0
  36. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/pyproject.toml +0 -0
  37. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/requirements.txt +0 -0
  38. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/robot.toml +0 -0
  39. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/tasks.py +0 -0
  40. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench-tools.zip +0 -0
  41. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/__main__.py +0 -0
  42. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/cli.py +0 -0
  43. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/config.py +0 -0
  44. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/execution_artifacts.py +0 -0
  45. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/html_parser.py +0 -0
  46. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/json_writer.py +0 -0
  47. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/log.py +0 -0
  48. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/model.py +0 -0
  49. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/model_utils.py +0 -0
  50. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/result_writer.py +0 -0
  51. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/robotframework2testbench.py +0 -0
  52. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/testbench2robotframework.py +0 -0
  53. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/testbench2robotframework/testsuite_write.py +0 -0
  54. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/tests/test_data/configurations/invalid_config.json +0 -0
  55. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/tests/test_data/configurations/valid_config.json +0 -0
  56. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/tests/test_missing_files.py +0 -0
  57. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/tests/test_robot_files_should_not_contain_invalid_characters.py +0 -0
  58. {testbench2robotframework-0.8.0a4 → testbench2robotframework-0.8.0a5}/tests/test_zip_file_generation.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: testbench2robotframework
3
- Version: 0.8.0a4
3
+ Version: 0.8.0a5
4
4
  Summary: Robot Framework Code Generator from Keyword-Driven Tests in imbus TestBench 3.0 and newer
5
5
  Author-email: imbus AG <support@imbus.de>
6
6
  Requires-Python: >= 3.10
@@ -17,4 +17,4 @@ suites and enhancing the TestBench report with execution results from Robot Fram
17
17
 
18
18
  from .testbench2robotframework import testbench2robotframework # noqa: F401
19
19
 
20
- __version__ = "0.8.0a4"
20
+ __version__ = "0.8.0a5"
@@ -95,6 +95,8 @@ class TestBenchJsonReader:
95
95
  for tcs_uid, tcs in self.test_case_sets.items():
96
96
  tc_catalog: dict[str, TestCaseDetails] = {}
97
97
  for tc_uid in self.get_test_case_uids(tcs_uid):
98
+ if tc_uid not in self.test_cases:
99
+ continue
98
100
  tc_catalog[tc_uid] = self.test_cases[tc_uid]
99
101
  tcs_catalog[tcs_uid] = TestCaseSet(tcs, tc_catalog)
100
102
  return tcs_catalog
@@ -444,6 +444,11 @@ class RfTestCase:
444
444
  filter(lambda parameter: parameter != "", interaction.cbr_parameters.values())
445
445
  )
446
446
  for index, parameter in enumerate(cbr_parameters):
447
+ if not parameter:
448
+ logger.warning(
449
+ f"Interaction {interaction.name} has undefined CallByReference parameter value."
450
+ )
451
+ continue
447
452
  if not parameter.startswith("${"):
448
453
  cbr_parameters[index] = f"${{{parameter}}}"
449
454
  return cbr_parameters
@@ -630,6 +635,7 @@ class RobotSuiteFileBuilder:
630
635
  test_case_section = TestCaseSection(header=SectionHeader.from_params(Token.TESTCASE_HEADER))
631
636
  robot_ast_test_cases = []
632
637
  for index, test_case in enumerate(self._rf_test_cases):
638
+ logger.debug(f"Processing test case: {test_case.uid}")
633
639
  robot_ast_test_cases.extend(test_case.to_robot_ast_test_cases())
634
640
  if index != len(self._rf_test_cases) - 1:
635
641
  robot_ast_test_cases[-1].body.extend(LINE_SEPARATOR)
@@ -4,6 +4,7 @@ import sys
4
4
  from pathlib import Path, PurePath
5
5
  from typing import Optional
6
6
  from zipfile import ZipFile
7
+ from .log import logger
7
8
 
8
9
  from testbench2robotframework.model import (
9
10
  RootNode,
@@ -45,6 +46,9 @@ class PathResolver:
45
46
  self.tt_paths = self._get_paths(self.tt_catalog)
46
47
 
47
48
  def _analyze_tree(self, test_theme_tree: TestStructureTree):
49
+ if not test_theme_tree.root:
50
+ logger.warning("Test Structure Tree contains no root node.")
51
+ return
48
52
  self.tree_dict[test_theme_tree.root.base.key] = test_theme_tree.root
49
53
  self._add_existing_tcs_to_catalog(test_theme_tree.root)
50
54
  for tse in test_theme_tree.nodes: