cli-test-framework 0.9.2__tar.gz → 0.9.3__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.
- {cli_test_framework-0.9.2/src/cli_test_framework.egg-info → cli_test_framework-0.9.3}/PKG-INFO +1 -1
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/docs/user_manual.md +20 -2
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/setup.py +1 -1
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/config/import_expander.py +15 -2
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3/src/cli_test_framework.egg-info}/PKG-INFO +1 -1
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework.egg-info/SOURCES.txt +1 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/__pycache__/test_cli.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/__pycache__/test_config_io.cpython-312-pytest-9.0.3.pyc +0 -0
- cli_test_framework-0.9.3/tests/unit/__pycache__/test_import_expander.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/__pycache__/test_import_expander.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_config_loader.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/__pycache__/test_json_yaml_runner.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/MANIFEST.in +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/README.md +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/docs/design.md +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/docs/design_en.md +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/docs/tui_and_config_split_design.md +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/docs/user_manual_en.md +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/pyproject.toml +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/setup.cfg +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/__init__.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/cli.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/commands/__init__.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/commands/compare.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/config/__init__.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/config/config_io.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/__init__.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/assertions.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/base_runner.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/config_loader.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/execution.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/history_store.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/parallel_runner.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/process_worker.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/setup.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/test_case.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/types.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/file_comparator/__init__.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/file_comparator/base_comparator.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/file_comparator/binary_comparator.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/file_comparator/csv_comparator.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/file_comparator/factory.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/file_comparator/h5_comparator.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/file_comparator/json_comparator.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/file_comparator/result.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/file_comparator/text_comparator.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/file_comparator/xml_comparator.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/logging_config.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/runners/__init__.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/runners/config_runner.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/runners/json_runner.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/runners/parallel_config_runner.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/runners/parallel_json_runner.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/runners/parallel_yaml_runner.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/runners/yaml_runner.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/utils/__init__.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/utils/junit_xml_writer.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/utils/path_resolver.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/utils/report_generator.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework.egg-info/dependency_links.txt +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework.egg-info/entry_points.txt +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework.egg-info/requires.txt +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework.egg-info/top_level.txt +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/README.md +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__init__.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/__init__.cpython-312.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/__init__.cpython-39.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/conftest.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/conftest.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/conftest.cpython-39-pytest-8.3.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/run_all.cpython-312.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/run_all.cpython-39.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/test_parallel_runner.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/test_setup_module.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/conftest.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/demos/h5_filter_demo.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/demos/manual_report_example.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/demos/perf_parallel.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/e2e/__init__.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/e2e/__pycache__/__init__.cpython-312.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/e2e/__pycache__/__init__.cpython-39.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/e2e/__pycache__/test_user_flows.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/e2e/__pycache__/test_user_flows.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/e2e/__pycache__/test_user_flows.cpython-39-pytest-8.3.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/e2e/test_user_flows.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/circular_config_a.json +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/circular_config_b.json +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/main_config.json +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/missing_fields.json +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/setup_main.json +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/setup_sub.json +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/sub_json_tests.yaml +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/sub_text_tests.json +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/test_cases.json +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/test_cases.yaml +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/test_cases1.json +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/test_with_setup.json +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/fixtures/test_with_setup.yaml +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/__pycache__/test_history_feature.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/__pycache__/test_history_feature.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/__pycache__/test_real_command_execution.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/__pycache__/test_real_command_execution.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/__pycache__/test_sequence.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/__pycache__/test_sequence.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_binary_compare.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_binary_compare.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_binary_compare.cpython-39-pytest-8.3.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_csv_compare.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_csv_compare.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_h5_compare.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_h5_compare.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_h5_compare.cpython-39-pytest-8.3.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_json_compare.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_json_compare.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_json_compare.cpython-39-pytest-8.3.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_text_compare.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_text_compare.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_text_compare.cpython-39-pytest-8.3.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_xml_compare.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/__pycache__/test_xml_compare.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/test_binary_compare.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/test_csv_compare.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/test_h5_compare.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/test_json_compare.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/test_text_compare.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/file_compare/test_xml_compare.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/parallel/__pycache__/test_parallel_runner.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/parallel/__pycache__/test_parallel_runner.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/parallel/__pycache__/test_parallel_runner.cpython-39-pytest-8.3.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/parallel/test_parallel_runner.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/path_handling/__pycache__/test_spaces_in_paths.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/path_handling/__pycache__/test_spaces_in_paths.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/path_handling/__pycache__/test_spaces_in_paths.cpython-39-pytest-8.3.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/path_handling/test_spaces_in_paths.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/test_history_feature.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/test_real_command_execution.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/test_sequence.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/run_all.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/test_report.txt +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/__pycache__/test_cli.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/__pycache__/test_h5_comparator.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/__pycache__/test_h5_comparator.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/__pycache__/test_run_all.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/__pycache__/test_run_all.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/commands/__pycache__/test_compare_command.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/commands/__pycache__/test_compare_command.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/commands/test_compare_command.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_assertions.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_assertions.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_execution.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_history_store.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_history_store.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_process_worker.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_process_worker.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_setup.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_setup.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/__pycache__/test_setup.cpython-39-pytest-8.3.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/test_assertions.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/test_config_loader.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/test_execution.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/test_history_store.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/test_process_worker.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/test_setup.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/__pycache__/test_json_yaml_runner.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/__pycache__/test_json_yaml_runner.cpython-312.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/__pycache__/test_json_yaml_runner.cpython-39-pytest-8.3.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/__pycache__/test_test_case_filter.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/__pycache__/test_test_case_filter.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/__pycache__/test_test_case_tag_filter.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/test_json_yaml_runner.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/test_test_case_filter.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/test_test_case_tag_filter.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/test_cli.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/test_config_io.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/test_h5_comparator.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/test_import_expander.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/test_run_all.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/utils/__pycache__/test_junit_xml_writer.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/utils/__pycache__/test_junit_xml_writer.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/utils/__pycache__/test_report_generator.cpython-312-pytest-7.4.4.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/utils/__pycache__/test_report_generator.cpython-312-pytest-9.0.3.pyc +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/utils/test_junit_xml_writer.py +0 -0
- {cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/utils/test_report_generator.py +0 -0
{cli_test_framework-0.9.2/src/cli_test_framework.egg-info → cli_test_framework-0.9.3}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cli-test-framework
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.3
|
|
4
4
|
Summary: A powerful command line testing framework in Python with setup modules, parallel execution, and file comparison capabilities.
|
|
5
5
|
Home-page: https://github.com/ozil111/cli-test-framework
|
|
6
6
|
Author: Xiaotong Wang
|
|
@@ -166,9 +166,9 @@ test_cases:
|
|
|
166
166
|
"args": ["hello"],
|
|
167
167
|
"expected": { "return_code": 0 }
|
|
168
168
|
},
|
|
169
|
-
{ "import": "cases/text_tests.json" },
|
|
169
|
+
{ "import": "cases/text_tests.json", "tags": ["text"] },
|
|
170
170
|
{ "import": "cases/json_tests.yaml" },
|
|
171
|
-
{ "import": "cases/h5_tests.json" }
|
|
171
|
+
{ "import": "cases/h5_tests.json", "tags": ["h5", "fast"] }
|
|
172
172
|
]
|
|
173
173
|
}
|
|
174
174
|
```
|
|
@@ -200,6 +200,24 @@ test_cases:
|
|
|
200
200
|
}
|
|
201
201
|
```
|
|
202
202
|
|
|
203
|
+
### Import 级标签(Tags)
|
|
204
|
+
|
|
205
|
+
当一个子文件中的所有用例都标记有相同的标签(如 `"text"`)时,无需在每个 case 里重复编写 `tags`。可以直接在 `import` 条目上添加 `tags`,框架会自动将标签注入到该文件导入的每一条用例:
|
|
206
|
+
|
|
207
|
+
```json
|
|
208
|
+
{ "import": "cases/text_tests.json", "tags": ["text", "fast"] }
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
**合并规则**:
|
|
212
|
+
|
|
213
|
+
| 场景 | 结果 |
|
|
214
|
+
|---|---|
|
|
215
|
+
| import 有 tags,子用例无 tags | 子用例继承 import 的所有 tags |
|
|
216
|
+
| import 有 tags,子用例也有 tags | 合并去重,import 的 tags 在前,子用例自有的在后 |
|
|
217
|
+
| import 无 tags | 行为不变,向后兼容 |
|
|
218
|
+
|
|
219
|
+
> 嵌套 import(子文件内部继续 import 其他文件)也适用此规则——外层 import 的 tags 会注入到**所有**递推展开后的用例上。
|
|
220
|
+
|
|
203
221
|
### 工作原理
|
|
204
222
|
|
|
205
223
|
1. **加载时展开**:Runner 在读取配置文件后、解析 `TestCase` 对象前,自动执行 import 展开。对 Runner 和执行引擎**完全透明**,无需修改测试用例或 Runner 代码。
|
|
@@ -8,7 +8,7 @@ with open(os.path.join(this_directory, 'README.md'), encoding='utf-8') as f:
|
|
|
8
8
|
|
|
9
9
|
setup(
|
|
10
10
|
name="cli-test-framework",
|
|
11
|
-
version="0.9.
|
|
11
|
+
version="0.9.3",
|
|
12
12
|
author="Xiaotong Wang",
|
|
13
13
|
author_email="xiaotongwang98@gmail.com",
|
|
14
14
|
description="A powerful command line testing framework in Python with setup modules, parallel execution, and file comparison capabilities.",
|
|
@@ -9,12 +9,16 @@ Example::
|
|
|
9
9
|
{
|
|
10
10
|
"setup": { ... },
|
|
11
11
|
"test_cases": [
|
|
12
|
-
{ "import": "cases/text_tests.json" },
|
|
12
|
+
{ "import": "cases/text_tests.json", "tags": ["text", "fast"] },
|
|
13
13
|
{ "import": "cases/json_tests.yaml" },
|
|
14
14
|
{ "name": "inline_case", "command": "echo", ... }
|
|
15
15
|
]
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
+
When ``"tags"`` is specified on an import entry, the tags are injected into
|
|
19
|
+
every test case from that imported file. Tags already present on individual
|
|
20
|
+
cases are merged (import-level tags come first, deduplicated).
|
|
21
|
+
|
|
18
22
|
The expansion produces a flat ``test_cases`` list with all imported cases
|
|
19
23
|
inlined. The Runner layer never sees the ``import`` keys.
|
|
20
24
|
"""
|
|
@@ -106,6 +110,7 @@ def expand_imports(
|
|
|
106
110
|
for item in raw_cases:
|
|
107
111
|
if "import" in item:
|
|
108
112
|
import_rel = item["import"]
|
|
113
|
+
import_tags = item.get("tags", [])
|
|
109
114
|
sub_path = (base_dir / import_rel).resolve()
|
|
110
115
|
|
|
111
116
|
if not sub_path.exists():
|
|
@@ -125,7 +130,15 @@ def expand_imports(
|
|
|
125
130
|
if sub_setup:
|
|
126
131
|
setup = _deep_merge_setup(setup, sub_setup)
|
|
127
132
|
|
|
128
|
-
|
|
133
|
+
sub_cases = sub_config.get("test_cases", [])
|
|
134
|
+
|
|
135
|
+
# Inject import-level tags into each imported case
|
|
136
|
+
if import_tags:
|
|
137
|
+
for case in sub_cases:
|
|
138
|
+
existing = case.get("tags", [])
|
|
139
|
+
case["tags"] = list(dict.fromkeys(import_tags + existing))
|
|
140
|
+
|
|
141
|
+
expanded_cases.extend(sub_cases)
|
|
129
142
|
else:
|
|
130
143
|
expanded_cases.append(item)
|
|
131
144
|
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3/src/cli_test_framework.egg-info}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cli-test-framework
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.3
|
|
4
4
|
Summary: A powerful command line testing framework in Python with setup modules, parallel execution, and file comparison capabilities.
|
|
5
5
|
Home-page: https://github.com/ozil111/cli-test-framework
|
|
6
6
|
Author: Xiaotong Wang
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework.egg-info/SOURCES.txt
RENAMED
|
@@ -139,6 +139,7 @@ tests/unit/__pycache__/test_cli.cpython-312-pytest-9.0.3.pyc
|
|
|
139
139
|
tests/unit/__pycache__/test_config_io.cpython-312-pytest-9.0.3.pyc
|
|
140
140
|
tests/unit/__pycache__/test_h5_comparator.cpython-312-pytest-7.4.4.pyc
|
|
141
141
|
tests/unit/__pycache__/test_h5_comparator.cpython-312-pytest-9.0.3.pyc
|
|
142
|
+
tests/unit/__pycache__/test_import_expander.cpython-312-pytest-7.4.4.pyc
|
|
142
143
|
tests/unit/__pycache__/test_import_expander.cpython-312-pytest-9.0.3.pyc
|
|
143
144
|
tests/unit/__pycache__/test_run_all.cpython-312-pytest-7.4.4.pyc
|
|
144
145
|
tests/unit/__pycache__/test_run_all.cpython-312-pytest-9.0.3.pyc
|
|
index b542bd3..e9aeb36 100644
|
|
|
Binary file
|
|
index 6740a91..d94bac3 100644
|
|
|
Binary file
|
cli_test_framework-0.9.3/tests/unit/__pycache__/test_import_expander.cpython-312-pytest-7.4.4.pyc
ADDED
|
Binary file
|
|
index 515b6b4..2985d8c 100644
|
|
|
Binary file
|
|
index 018ed15..fd3bd62 100644
|
|
|
Binary file
|
|
index ea52a73..0f6b66e 100644
|
|
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/commands/__init__.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/commands/compare.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/config/__init__.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/config/config_io.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/__init__.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/assertions.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/base_runner.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/config_loader.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/execution.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/history_store.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/parallel_runner.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/process_worker.py
RENAMED
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/core/test_case.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/logging_config.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/runners/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/runners/json_runner.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/runners/yaml_runner.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/utils/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework/utils/path_resolver.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework.egg-info/requires.txt
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/src/cli_test_framework.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/__init__.cpython-312.pyc
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/__init__.cpython-39.pyc
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/run_all.cpython-312.pyc
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/__pycache__/run_all.cpython-39.pyc
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/e2e/__pycache__/__init__.cpython-312.pyc
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/e2e/__pycache__/__init__.cpython-39.pyc
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/integration/test_history_feature.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/commands/test_compare_command.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/core/test_process_worker.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/test_json_yaml_runner.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/runners/test_test_case_filter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/utils/test_junit_xml_writer.py
RENAMED
|
File without changes
|
{cli_test_framework-0.9.2 → cli_test_framework-0.9.3}/tests/unit/utils/test_report_generator.py
RENAMED
|
File without changes
|