pyvider-cty
2025-03-30
Added Go-cty compatibility test infrastructure with both Go and Python
20 files · 2,647+ · 713-
Go-cty Compatibility Testing
2 files changed
go.modAdded `go.mod`, `go.sum` for Go dependency managementgo.sumAdded `go.mod`, `go.sum` for Go dependency management
- Added
tests/compatibility/go_cty_generator.go(428 lines): Generates test fixtures from Go cty library qualify internal1 file
go_cty_generator.go
- Added
tests/compatibility/py_cty_generator.py(434 lines): Generates equivalent Python fixtures qualify internal1 file
py_cty_generator.py
- Added
go.mod,go.sumfor Go dependency management baseline internal2 files
go.modgo.sum
- Added JSON structure comparison files:
go-cty-raw-structure.json,go-cty-type-structure.json,gostruct.json,pystruct.jsoninstantiate internal4 files
go-cty-raw-structure.jsongo-cty-type-structure.jsongostruct.jsonpystruct.json
CtyValue Attrs Integration
1 file changed
base.pyIterative attrs integration attempts on CtyValue base class
- Added
from attrs import defineand attempted@define(frozen=True, slots=True)decorator interface internal1 file
base.py
- Changed to
@define(slots=True)(mutable), then removed decorator entirely decouple internal1 file
base.py
- Iterative approach to finding the right attrs integration
decouple
internal
1 file
base.py
Map Type and Tests
1 file changed
map.py`types/collections/map.py`: 473 lines of changes improving map operations
types/collections/map.py: 473 lines of changes improving map operations decouple internal1 file
map.py
- Added
tests/map/test_cty_map.py(391 lines): Comprehensive map test suite qualify internal1 file
test_cty_map.py
- Added
tests/map/harness.py(28 lines): Map test helper utilities qualify internal1 file
harness.py
- Updated
test_cty_map_comparison.py,test_cty_map_complex.py,test_cty_map_creation.pydecouple internal3 files
test_cty_map_comparison.pytest_cty_map_complex.pytest_cty_map_creation.py
- Reduced
test_cty_map_validation.py(removed 119 lines) decouple internal1 file
test_cty_map_validation.py
Path Module Updates
1 file changed
base.py`path/base.py`: 33 lines of changes simplifying path resolution
Other
1 file changed
test_claude_attempt_1.pySee points for details
- Updated JSON serializer tests (36 lines changed)
qualify
internal
1 file
test_claude_attempt_1.py
- Updated serializers integration tests (64 lines changed)
qualify
internal
1 file
test_claude_attempt_1.py
- Added
docs/test_claude_attempt_1.py(645 lines): Claude-generated test attempt qualify internal1 file
test_claude_attempt_1.py