pyvider-cty
2025-10-20
Mutation testing infrastructure added with new test coverage
342 files · 189,413+ · 244-
Mutation Testing Infrastructure
4 files changed
mutation-testing.yml+72 -0 lines.mutmut-config.py+22 -0 linesMUTATION_TESTING.md+176 -0 linesrun-coverage.sh+36 -0 lines
- Added
.github/workflows/mutation-testing.yml(72 lines) — CI workflow for mutation testing qualify internal1 file
mutation-testing.yml
- Added
.mutmut-config.py(22 lines) — mutmut configuration baseline internal1 file
.mutmut-config.py
- Added
MUTATION_TESTING.md(176 lines) — mutation testing guide and results documentation qualify internal1 file
MUTATION_TESTING.md
- Added
run-coverage.sh(36 lines) — coverage runner script qualify internal1 file
run-coverage.sh
Mutants Directory (Generated)
68 files changed
mutmut-stats.json+7423 -0 linespyproject.toml+154 -0 lines__init__.py+3 -3 lines__init__.py+3 -3 lines_version.py+3 -3 linescodec.py+3 -2 lines__init__.py+3 -3 linesdefaults.py+3 -3 linesruntime.py+3 -2 lines__init__.py+3 -3 linesvalidation_context.py+3 -2 lines__init__.py+3 -3 lines_utils.py+3 -2 linesadapter.py+3 -2 linesexplicit.py+3 -2 linesinference_cache.py+3 -2 linesraw_to_cty.py+3 -2 linestype_encoder.py+3 -2 lines__init__.py+3 -3 linesbase.py+3 -3 linesconversion.py+3 -3 linesencoding.py+3 -3 linesvalidation.py+3 -2 lines__init__.py+3 -3 linesbytes_functions.py+3 -2 linescollection_functions.py+4 -3 linescomparison_functions.py+3 -2 linesconversion_functions.py+3 -2 linesdatetime_functions.py+3 -2 linesencoding_functions.py+3 -2 linesnumeric_functions.py+3 -2 linesstring_functions.py+3 -2 linesstructural_functions.py+3 -2 linesmarks.py+3 -2 linesparser.py+3 -3 lines__init__.py+3 -3 linesbase.py+3 -2 lines__init__.py+3 -3 linesbase.py+3 -2 linescapsule.py+3 -2 linescapsule_types.py+3 -3 lines__init__.py+3 -3 lineslist.py+4 -2 linesmap.py+3 -2 linesset.py+3 -2 lines__init__.py+3 -3 linesbool.py+3 -2 linesnumber.py+3 -2 linesstring.py+3 -2 lines__init__.py+3 -3 linesdynamic.py+3 -2 linesobject.py+3 -2 linestuple.py+3 -2 linesvalidation.py+0 -33 lines__init__.py+3 -3 linesrecursion.py+3 -2 lines__init__.py+3 -3 linesbase.py+3 -2 linesmarkers.py+3 -3 linesconftest.py+21 -0 linestest_comparison_refined_unknowns.py+392 -0 linestest_numeric_refined_unknowns.py+473 -0 linestest_collections_properties.py+3 -2 linestest_exception_coverage.py+37 -24 linestest_schema_validation.py+3 -1 linestest_capsule_edge_cases.py+300 -0 linestest_map_validation.py+259 -0 linestest_value_edge_cases.py+234 -0 lines
- Added
mutants/mutmut-stats.json(7423 lines) — mutation testing statistics qualify internal1 file
mutmut-stats.json
- Added
mutants/pyproject.toml(154 lines) — mutants subproject config baseline internal1 file
pyproject.toml
- Added complete
mutants/src/andmutants/tests/trees — 189,000+ lines of generated mutant variants across all source and test modules qualify internal66 files
__init__.py__init__.py_version.pycodec.py__init__.pydefaults.pyruntime.py__init__.pyvalidation_context.py__init__.py_utils.pyadapter.pyexplicit.pyinference_cache.pyraw_to_cty.pytype_encoder.py__init__.pybase.pyconversion.pyencoding.pyvalidation.py__init__.pybytes_functions.pycollection_functions.pycomparison_functions.pyconversion_functions.pydatetime_functions.pyencoding_functions.pynumeric_functions.pystring_functions.pystructural_functions.pymarks.pyparser.py__init__.pybase.py__init__.pybase.pycapsule.pycapsule_types.py__init__.pylist.pymap.pyset.py__init__.pybool.pynumber.pystring.py__init__.pydynamic.pyobject.pytuple.pyvalidation.py__init__.pyrecursion.py__init__.pybase.pymarkers.pyconftest.pytest_comparison_refined_unknowns.pytest_numeric_refined_unknowns.pytest_collections_properties.pytest_exception_coverage.pytest_schema_validation.pytest_capsule_edge_cases.pytest_map_validation.pytest_value_edge_cases.py
New Tests
13 files changed
validation.py+10962 -0 linestest_comparison_refined_unknowns.py+392 -0 linestest_numeric_refined_unknowns.py+473 -0 linestest_capsule_edge_cases.py+300 -0 linestest_map_validation.py+259 -0 linestest_value_edge_cases.py+234 -0 linesvalidation.py+3 -2 linesvalidation.py+0 -33 linestest_comparison_refined_unknowns.py+392 -0 linestest_numeric_refined_unknowns.py+473 -0 linestest_capsule_edge_cases.py+300 -0 linestest_map_validation.py+259 -0 linestest_value_edge_cases.py+234 -0 lines
- Added
tests/functions/test_comparison_refined_unknowns.py(392 lines) qualify internal2 files
test_comparison_refined_unknowns.pytest_comparison_refined_unknowns.py
- Added
tests/functions/test_numeric_refined_unknowns.py(473 lines) qualify internal2 files
test_numeric_refined_unknowns.pytest_numeric_refined_unknowns.py
- Added
tests/types/test_capsule_edge_cases.py(300 lines) qualify internal2 files
test_capsule_edge_cases.pytest_capsule_edge_cases.py
- Added
tests/types/test_map_validation.py(259 lines) qualify internal5 files
validation.pytest_map_validation.pyvalidation.pyvalidation.pytest_map_validation.py
- Added
tests/values/test_value_edge_cases.py(234 lines) qualify internal2 files
test_value_edge_cases.pytest_value_edge_cases.py
Source
7 files changed
validation.py+10962 -0 linesconftest.py+216 -0 linesvalidation.py+3 -2 linesvalidation.py+0 -33 linesconftest.py+21 -0 linessettings.local.jsonModifieduv.lockModified
src/pyvider/cty/validation.py(34 lines removed) — validation module cleaned up deprecate internal3 files
validation.pyvalidation.pyvalidation.py
tests/conftest.py(21 lines), property-based test updates qualify internal2 files
conftest.pyconftest.py
uv.lock(96 lines changed) baseline internal1 file
uv.lock
.claude/settings.local.json(20 lines) baseline internal1 file
settings.local.json