test: consolidate test targets and add a prepare-free unit lane - #528
Merged
Merged
Conversation
phoxal's six external test targets become three: tests/unit is one executable with modules for the deterministic public-API suites, runtime_behavior_observers keeps its own process (tracing delivery consults a process-wide call-site interest cache), and tests/compile gathers the compiler contracts — macro compile-fail cases and the consumer feature profiles' compilation checks. The trybuild fixture expectations are re-blessed for their new directory; only the recorded fixture paths changed, no diagnostic text. The new unit lane in CI selects packages and targets explicitly and needs no fixture preparation and no composition compilation: the library and binary unit suites of the SDK, tool, supervisor, services, and components, plus the SDK's external-crate unit and observer suites. phoxal-service-world stays in the prepared lane because its transport test compiles only against its own prepared products. That gate was hiding more than a layout detail: services/world was never prepared in CI, so its transport test has been compiling empty — the prepare loop now includes it and the test runs (1.8 s against the real transport). The clippy-and-tests lane documents that it also executes the documentation tests. Verified with the exact lane commands: unit lane green (13 package library suites, cargo-phoxal's 76 bin tests, unit 108, observers 4); compile suite 7/7 and 8/8 with the scenario feature; workspace lane 53 test binaries, 0 failures; world transport 1/1; clippy -D warnings and fmt clean. Signed-off-by: jbernavaprah <webjure@gmail.com>
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.
Purpose
Final step of the accepted test-boundary refactor: target layout consolidation and explicit CI suite selection.
What changes
tests/unitis one executable with modules for the deterministic public-API suites;runtime_behavior_observerskeeps its own process (tracing delivery consults a process-wide call-site interest cache);tests/compilegathers the compiler contracts — macro compile-fail cases and the consumer feature profiles' compilation checks. The trybuild fixture expectations are re-blessed for their new directory — only the recorded fixture paths changed, no diagnostic text.unitlane in CI selects packages and targets explicitly and needs no fixture preparation and no composition compilation: the library and binary unit suites of the SDK, tool, supervisor, services, and components, plus the SDK's external-crate unit and observer suites.phoxal-service-worldstays in the prepared lane because its transport test compiles only against its own prepared products.Verified with the exact lane commands
unit108, observers 4.clippy --workspace --all-targets -D warnings,fmt --check,git diff --checkclean.Delivery order
Single repository, no publication impact.