test(19.4-04): unit tests for wristband's OIDC flavour

- PHP protocol cases, one subtest per PHP method: TestPKCEVerifier,
  TestRedirectURIMatch, TestTokenIssuer, TestAuthCodeLifecycle,
  TestPKCEAndReplay, TestConsentCSRF (cases 1-5)
- Go-only behaviour: discovery bytes, JWKS shapes, PEM parsing, ES256 and
  mixed rings, validation order, repeated parameters, PHP encoding,
  resume, switch account, JSON consent, client authentication, uniform
  userinfo 401, pairwise subjects, opt-in refresh, kind isolation,
  flavour dispatch, SetOIDCBackend checks, MCP refuses openid
- every name required by the gate's go stage
This commit is contained in:
2026-10-19 21:05:21 +02:00
parent 028e8da7e8
commit dd167466d2
11 changed files with 2565 additions and 0 deletions

View File

@@ -80,6 +80,15 @@ WRISTBAND_TESTS=(
TestOIDCCodeBindingSmoke TestOIDCLogsCarryNoCredentials TestOIDCSubjectIsRandomSmoke
# MCP flavour unchanged (D-07): the phase 08 coverage suite.
TestPhase08Coverage
# Plan 04: the PHP protocol cases, one subtest per PHP method.
TestPKCEVerifier TestRedirectURIMatch TestTokenIssuer TestAuthCodeLifecycle
TestPKCEAndReplay TestConsentCSRF
# Plan 04: Go-only behaviour.
TestDiscoveryFields TestJWKSShapes TestKeyPEMParsing TestES256Ring TestMixedRingJWKS
TestAuthorizeValidationOrder TestRepeatedQueryParams TestPHPQueryEncoding
TestResumeAndSilentConsent TestSwitchAccount TestConsentJSONOperations
TestOIDCClientAuthentication TestUserInfoUniform401 TestPairwiseSubjects TestRefreshOptIn
TestKindIsolation TestFlavourHandlers TestSetOIDCBackendValidation TestMCPRefusesOpenID
)
TIDE_TESTS=(TestCaptureResponseFormField)