Implement and test new feature phase by phase #3
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
name: Pull request
about: Contribute to the OpenSSM project
Describe the changes
This PR completes the implementation of the Datest framework as outlined in
datest/.design/3d-design.md. It covers:datest/models.py), a Dana assertion parser (datest/assertions.py), and enhancements to the executor and reporter to handle structured Dana test output.datest/pytest_plugin.py) for seamless Dana test discovery and execution within pytest, a robust configuration system (datest/config.py) supportingdatest.tomlandpyproject.toml, and an enhanced CLI.Additionally,
datest/.design/3d-design.mdhas been updated to reflect the completion of these phases, and a newIMPLEMENTATION_SUMMARY.mdhas been added detailing the implemented features and project structure. A sampledatest.tomlconfiguration file is also included.Related issues
Implements the design and implementation plan detailed in
datest/.design/3d-design.md.Tests
Comprehensive unit, integration, and end-to-end tests have been added:
tests/unit/: New unit tests fordatest/models.py,datest/assertions.py,datest/config.py, anddatest/executor.py.tests/integration/: Integration tests covering the full Dana test pipeline.tests/e2e/: End-to-end tests for CLI functionality and configuration loading.tests/fixtures/are used for testing.Checklist
Open in Web • Open in Cursor • Open Docs