Repository navigation
[TST-E3] test: the emission and ingestion tests that only read the pinned spec share its one binding - #438
Merged
Conversation
… share its one binding TST-E3 first half, PR 3. Eight emission and ingestion test classes read Document, Curation or Plan from the session-shared PinnedBinding instead of ingesting or binding the pin themselves (22 ingestions per session become 3: the fixture plus PinnedSpecSmokeTests' two deliberately independent determinism ingestions, now commented). No assertion, test name or argument row changes.
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.
📝 Description
What does this PR do?
It is the third PR of TST-E3's first half. Eight emission and ingestion test classes that only read the pinned spec now take it from the session-shared
Support/PinnedBindingfixture that #434 added, instead of ingesting or binding it themselves:Generator/Emission/ExperimentalSurfaceEmissionTestsPlan(its diagnostic variant is still a localwithcopy)HandWrittenDoorRemarksTestsDocumentHandWrittenExperimentalDoorTestsDocument,CurationHandWrittenTransportTableTestsDocument(both table rows kept)OptionalConverterEmitterTestsPlan.Models(its private helper is now synchronous, since nothing is awaited)SessionScopedEventEmissionTestsPlanSourceEmitterTestsPlan(the full union and registry comparisons stay full)Generator/Ingestion/PinnedSpecSmokeTestsDocument, for its ordinary landmark testsThe determinism test stays independent.
PinnedSpecSmokeTests' determinism test still ingests twice through its own helper, and now carries a comment saying why: comparing a cached result with itself proves nothing.Pinned ingestions for these classes go from 22 to 3 per session: the shared initialization plus the two deliberate determinism ingestions. All 40 test names, 140 assertions and 4 argument rows are unchanged, and no test mutates the shared objects.
The files GEN-E3 is editing,
PinnedBinding,BindingTestHost,BindingScenarioDataandSpecScenarioare unchanged.🔄 Type of Change
🎯 Protocol & API Surface
external/,spec/orsrc/was touched🧪 Testing
verify-clones(0 new) and the whole Tools.Tests project under[(Category!=Packaging)&(Category!=NativeAot)](1991/0, exit 0) on the committed tree.with, the emission only enumeratesPlan.Models, the determinism helper is untouched, and the seven migrated smoke tests inspect ingestion landmarks, not repeated-execution behaviour.✅ Completion Gate
Local check (
quality-gates.md) on head4630df90, base321ce2fc. Every step's own exit code was read:dotnet build --configuration Release: 0 warnings, 0 errorsdotnet format whitespace/dotnet format style --severity warn: no changesverify-clones: passed, 0 new (tests 5.52%)OpenCode.Sdk.Tools.Tests(all but NativeAot): 2004, 0 failedOpenCode.Sdk.Tests(all but ServiceElection/NativeAot): 8390, 0 failedThe host runs Bun 1.4.3, a maintainer-named off-pin host (
OPENCODE_SDK_TESTS_BUN_MISMATCH=allow); the pin is 1.4.2.✅ Code Quality Checklist
Need help on this PR? Tag
@codesmith-botwith what you need.