Skip to content

Add durable extension acceptance fixtures - #104

Merged
IlyaasK merged 1 commit into
mainfrom
hypeship/extension-acceptance-fixture
Jul 29, 2026
Merged

Add durable extension acceptance fixtures#104
IlyaasK merged 1 commit into
mainfrom
hypeship/extension-acceptance-fixture

Conversation

@IlyaasK

@IlyaasK IlyaasK commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • add durable extension upload/delete calls to the provider-local Kernel client
  • add guarded, project-scoped extension cleanup for acceptance fixtures
  • verify mutation scope, disabled retries, cleanup deadlines, 404 handling, and error reporting
  • keep extension download and Chrome Store operations outside the provider client

Why this is v0 work

The existing kernel_extension data source needs a real uploaded fixture for live acceptance coverage. These helpers create and clean up that durable fixture without adding the parked Terraform extension resource.

Tests

  • go test -short -timeout=2m ./...
  • go test -race -short -timeout=2m ./internal/kernelclient ./internal/acctest
  • go vet ./...
  • go mod verify
  • go mod tidy -diff
  • terraform fmt -check -recursive examples
  • bash scripts/check-markdown-links.sh
  • bash scripts/check-docs.sh
  • git diff --check
  • gofmt -l cmd internal

Acceptance status

No live API test is added in this fixture-only PR. The stacked extension data-source acceptance PR uploads the fixture and exercises cleanup.

Intentionally unsupported

  • no Terraform extension resource
  • no extension download or Chrome Store operations
  • no browser/session runtime operations

Note

Low Risk
Changes are limited to acceptance helpers and a narrow client surface, following established proxy/profile cleanup patterns with no provider resource or auth changes.

Overview
Adds project-scoped extension upload and delete on the provider kernelclient, using the same mutation rules as other resources (explicit project header, no SDK retries on writes).

Adds CleanupExtension in acctest so acceptance tests can tear down uploaded extension fixtures: gated on acceptance env/API key, default project resolution, timed delete context, 404 treated as clean, and other delete errors surfaced.

Tests cover cleanup behavior (including the new extension_test.go) and fold upload/delete into the existing mutation-scope table; a reflect test asserts download / Chrome Store extension APIs stay off Clients.

Reviewed by Cursor Bugbot for commit de11cd5. Bugbot is set up for automated code reviews on this repo. Configure here.

@IlyaasK
IlyaasK marked this pull request as ready for review July 27, 2026 21:45
@IlyaasK
IlyaasK force-pushed the hypeship/proxy-data-source-acceptance branch from 15f7e92 to de4893d Compare July 28, 2026 13:22
@IlyaasK
IlyaasK force-pushed the hypeship/extension-acceptance-fixture branch from a06c10b to 08f1ba9 Compare July 28, 2026 13:23
@IlyaasK
IlyaasK force-pushed the hypeship/proxy-data-source-acceptance branch from de4893d to 15f7e92 Compare July 28, 2026 13:28
@IlyaasK
IlyaasK force-pushed the hypeship/extension-acceptance-fixture branch from 08f1ba9 to a06c10b Compare July 28, 2026 13:28
@IlyaasK
IlyaasK requested a review from Sayan- July 28, 2026 13:43
@IlyaasK
IlyaasK force-pushed the hypeship/proxy-data-source-acceptance branch from 15f7e92 to f41e8d5 Compare July 29, 2026 19:06
@IlyaasK
IlyaasK changed the base branch from hypeship/proxy-data-source-acceptance to main July 29, 2026 19:34
@IlyaasK
IlyaasK force-pushed the hypeship/extension-acceptance-fixture branch from a06c10b to de11cd5 Compare July 29, 2026 19:36
@IlyaasK
IlyaasK merged commit e902f9a into main Jul 29, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants