Move conformance tests into the per-module tree under plain_modules - #258
Closed
NejcS wants to merge 4 commits into
Closed
Move conformance tests into the per-module tree under plain_modules#258NejcS wants to merge 4 commits into
NejcS wants to merge 4 commits into
Conversation
Each module now renders into a single folder under the build folder:
plain_modules/<module>/
.codeplain/ module_metadata.json (module level, not in any git repo)
.memory/ conformance test memory (module level, not in any git repo)
code/ git repo with the implementation code
tests/ git repo with the conformance tests
The tests/ folder is only created when a conformance tests script is
configured. The metadata file is no longer tracked in a git repo, so the
renderer now trims the stored functionalities list itself whenever it
reverts the code repo to an earlier functionality.
Conformance tests now always live in <build-folder>/<module>/tests, so the setting no longer means anything. Old config files that still set the key fail with a clear 'Invalid configuration key' error. The --copy-conformance-tests / --conformance-tests-dest options stay; a new guard prevents --conformance-tests-dest from pointing at the build folder (the dist copy wipes its destination first). The CLI reference files are regenerated from the parser; the docs/ copy also picks up previously missing --status and --version entries.
The example run scripts and the e2e tests now look for generated code in plain_modules/<module>/code. The project-structure docs describe the per-module tree.
task-manager.plain requires task-model.plain, demonstrating a requires dependency chain: the base module is rendered first and the top module builds on top of its generated code.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Each module now renders into a single folder:
plain_modules/<module>/withcode/(implementation, git repo),tests/(conformance tests, git repo — only created when a conformance tests script is configured), and.codeplain/+.memory/at module level outside git.The
--conformance-tests-folderCLI argument and config key are removed. Outputs from older versions re-render from scratch automatically; the old top-levelconformance_tests/folder can be deleted by hand.