pyvider-hcl 2025-10-21
Major test suite expansion with fixtures, integration, and property-based tests
9 files · 1,010+ · 169-

Shared test fixtures added via conftest.py

1 file changed
  • conftest.py Added provide-testkit integration with temp directories and structured HCL fixtures
  • Added tests/conftest.py with provide-testkit integration for temp directories and file structures qualify internal
    1 file
    • conftest.py
  • Fixtures include sample_hcl_content, multi_file_hcl_structure (creates a full Terraform project layout with main.hcl, variables.hcl, outputs.hcl, and modules), hcl_config_file, nested_object_hcl, and list_of_objects_hcl qualify internal
    1 file
    • conftest.py

Integration test suite exercising full parsing pipeline

1 file changed
  • test_integration.py Added 231-line end-to-end tests from HCL text through CTY value creation
  • Added tests/test_integration.py (231 lines) with end-to-end tests exercising the full parsing pipeline from HCL text through CTY value creation qualify internal
    1 file
    • test_integration.py

Property-based tests using Hypothesis for fuzz testing

1 file changed
  • test_property_based.py Added 212-line Hypothesis-based fuzz testing for HCL type parsing and auto-inference
  • Added tests/test_property_based.py (212 lines) using Hypothesis for fuzz-style testing of HCL type parsing, auto-inference, and HCL parsing with generated inputs qualify internal
    1 file
    • test_property_based.py

Terraform config parsing tests added

1 file changed
  • test_terraform.py Added 31-line tests for parse_terraform_config function
  • Added tests/test_terraform.py (31 lines) testing the parse_terraform_config function qualify internal
    1 file
    • test_terraform.py

Factory and parser edge-case test coverage expanded

3 files changed
  • test_factories.py Added 12+ new edge-case tests for _parse_hcl_type_string and variable factory
  • test_parser.py Added additional parser tests (46 lines of additions)
  • test_printer.py Added more printer test coverage (27 lines of additions)
  • Added 12+ new edge-case tests for _parse_hcl_type_string: empty list/map types, object without braces, empty braces, trailing comma, empty attribute parts, missing equals sign, empty name/type qualify internal
    1 file
    • test_factories.py
  • Added tests for invalid variable names (empty, non-identifier), invalid type strings, sensitive flag, all-params combination qualify behavioral
    1 file
    • test_factories.py
  • Added test for empty resource type qualify internal
    1 file
    • test_factories.py
  • Added additional parser tests (46 lines of additions) qualify internal
    1 file
    • test_parser.py
  • Added more printer test coverage (27 lines of additions) qualify internal
    1 file
    • test_printer.py

Lock file and settings updated

2 files changed
  • uv.lock Regenerated lock file with updated dependency versions
  • settings.local.json Updated Claude settings
  • Regenerated uv.lock with updated dependency versions baseline internal
    1 file
    • uv.lock