Add Go backend contract test harness (api-contracts)#3643
Draft
zackverham wants to merge 2 commits intomainfrom
Draft
Add Go backend contract test harness (api-contracts)#3643zackverham wants to merge 2 commits intomainfrom
zackverham wants to merge 2 commits intomainfrom
Conversation
Introduces a contract test suite in test/api-contracts/ that validates the Publisher API behavior through the Go HTTP backend. Tests cover configurations, credentials, deployments, entrypoints, and inspect endpoints with fixture workspaces for each content type. The test harness uses a BackendClient interface to enable future dual-execution against both Go and TypeScript implementations, ensuring behavioral parity during migration. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
7 tasks
…ls, interpreters, and accounts Extends the contract test harness from 14 to ~28 endpoint coverage by adding tests for configuration files/secrets/packages/integration-requests, workspace files, credential-by-GUID, interpreters, and accounts endpoints. - Add 15 new methods to BackendClient interface and GoHttpClient implementation - Add TypeScriptDirectClient stubs for all new methods - Add "bad_request" (400) to ResultStatus and mapStatus - Improve toContractResult to handle missing Content-Type headers - Add seedWorkspaceFile/removeWorkspaceFile helpers - Add renv.lock fixture for R packages tests - Create 8 new test files with 31 new test cases Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.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.
Summary
test/api-contracts/— a contract test suite that validates Publisher API behavior through the Go HTTP backendBackendClientinterface to enable future dual-execution against both Go and TypeScript implementations during migrationjust test-contractsrecipeContext
Split from #3640 into three focused PRs:
test/api-contracts/— Publisher API contract teststest/connect-api-contracts/— Connect API contract tests (separate PR)test/extension-api-contracts/— Extension API contract tests (separate PR)Test plan
just build && just test-contractspasses🤖 Generated with Claude Code