1.0 KiB
1.0 KiB
Contract tests
Contract tests validate WHMCS module requests and responses against the GameCloud integration API (/api/v1/integrations/whmcs/*).
Scope
- Request signing headers (
X-HGC-Integration-ID,X-HGC-Signature,X-HGC-Idempotency-Key, …) - Canonical HMAC signature base string
- JSON request/response shapes from
packages/contracts/src/whmcs.ts - Idempotent lifecycle operations (
provision,suspend,renew,change-package)
Running
Contract tests require a reachable GameCloud API or a recorded mock server. They are not executed in CI by default.
# From integrations/whmcs after installing dev dependencies:
composer install
./vendor/bin/phpunit --testsuite Contract
Fixtures
Sample WHMCS $params payloads and signed API examples will live under tests/Fixtures/ as the contract suite grows.
Related
- OpenAPI / Zod contracts:
packages/contracts/src/whmcs.ts - Server module client:
modules/servers/hexagamecloud/lib/ApiClient.php - Addon module client:
modules/addons/hexagamecloud/lib/ApiClient.php