* Replace shell smoke test with Go integration tests Replaces the 480-line bash smoke test with Go integration tests that are deterministic, fast, and self-contained. The new test infrastructure uses fixture data and a mock wp.org server so tests run without network dependencies on the WordPress.org API. New files: - Mock wp.org server (internal/wporg/mock_server.go) + API fixtures - Test DB helpers (internal/testutil/testdb.go) for in-memory SQLite - Integration smoke test covering full pipeline, HTTP endpoints, composer install, version pinning, and build integrity - R2 sync test using gofakes3 for S3-compat verification - Live canary test for nightly runs against real wp.org - Fixture capture script (test/capture-fixtures.sh) - Canary CI workflow (.github/workflows/canary.yml) Changes: - wporg.Client now supports configurable base URL via SetBaseURL() - S3 client uses path-style addressing (needed for R2 + test compat) - CI workflow gains integration test job (stub CSS, no Tailwind needed) - Makefile: smoke target replaced with integration target Deleted: test/smoke_test.sh, .github/workflows/smoke-test.yml Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * Allow insecure HTTP for composer in integration tests The httptest server uses plain HTTP (http://127.0.0.1:...) which Composer's secure-http default blocks. Add secure-http: false to the generated composer.json config. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
19 lines
602 B
JSON
19 lines
602 B
JSON
{
|
|
"name": "Twenty Twenty-Five",
|
|
"slug": "twentytwentyfive",
|
|
"version": "1.1",
|
|
"author": "WordPress team",
|
|
"homepage": "https://wordpress.org/themes/twentytwentyfive/",
|
|
"last_updated": "2025-01-15 12:00:00",
|
|
"active_installs": 3000000,
|
|
"downloaded": 50000000,
|
|
"rating": 72,
|
|
"num_ratings": 40,
|
|
"sections": {
|
|
"description": "Twenty Twenty-Five is a versatile theme designed for blogs and websites."
|
|
},
|
|
"versions": {
|
|
"1.0": "https://downloads.wordpress.org/theme/twentytwentyfive.1.0.zip",
|
|
"1.1": "https://downloads.wordpress.org/theme/twentytwentyfive.1.1.zip"
|
|
}
|
|
}
|