test: exercise FDv2 and FDv1 fallback via the v3 contract tests#315
Draft
kinyoklion wants to merge 1 commit into
Draft
test: exercise FDv2 and FDv1 fallback via the v3 contract tests#315kinyoklion wants to merge 1 commit into
kinyoklion wants to merge 1 commit into
Conversation
5d0e2f1 to
55ea665
Compare
0a9b5dd to
dd322f6
Compare
Wire the Flutter contract test service for the v3 (FDv2) harness and run it in CI: - Advertise the fdv1-fallback capability. - Map the data system configuration onto LDConfig.dataSystem, including the fdv1Fallback polling config. - Regenerate the service API model for the dataSystem schema. - Add an FDv2 contract-tests run to the shared CI action (the v3 harness, branch v3) alongside the existing FDv1 run; it restarts the test service since the FDv1 run stops it at the end. The v3 harness passes end-to-end against this (816 total, 792 ran).
55ea665 to
89be93f
Compare
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.
Stacked on #314 (the Flutter FDv2 exposure). Wires the Flutter contract test service for the v3 (FDv2) harness and runs it in CI, so the data system — including FDv1 fallback — is exercised end-to-end.
Changes
fdv1-fallbackcapability; map the harnessdataSystemconfiguration ontoLDConfig.dataSystem(including thefdv1Fallbackpolling config); regenerate the service API model (service_api.openapi.*) for thedataSystemschema..github/actions/ci/action.yml): add an FDv2 contract-tests run (thelaunchdarkly/gh-actions/actions/contract-testsaction withversion: v3,branch: v3) alongside the existing FDv1 run. Because the FDv1 run stops the test service at the end, the FDv2 step restarts it. Modeled on cpp-sdks'contract-tests-fdv2job.Validation
The v3 harness passes end-to-end against this service: 816 total / 792 ran / 24 skipped, exit 0 (run locally against this branch on merged main), including the full FDv1 fallback suite. Contract service analyzes clean.
Notes for review
The CI YAML can't be run locally, so a couple of assumptions to sanity-check:
contract-tests@contract-tests-v1.3.0action supportsversion: v3/branch: v3(cpp uses the same action with v3).testharness-suppressions.txt(the v3 run passes with it; cpp keeps a separate*-fdv2.txt— we can split if preferred).