Started implementing token exchange, tests

This commit is contained in:
Barnaby Walters 2021-06-10 18:25:54 +02:00
parent c3b4e5ec5b
commit 9c6ef316e1
1 changed files with 26 additions and 26 deletions

View File

@ -537,6 +537,10 @@ EOT
];
foreach ($testCases as $name => $params) {
foreach ([
[$s, 'handleAuthorizationEndpointRequest'],
[$s, 'handleTokenEndpointRequest'],
] as $endpointHandler) {
// Create an auth code.
$codeVerifier = generateRandomString(32);
$authCode = $storage->createAuthCode([
@ -555,15 +559,11 @@ EOT
'code_verifier' => $codeVerifier
], $params));
$authEndpointResponse = $s->handleAuthorizationEndpointRequest($req);
$this->assertEquals(400, $authEndpointResponse->getStatusCode());
$authEndpointJson = json_decode((string) $authEndpointResponse->getBody(), true);
$this->assertEquals('invalid_grant', $authEndpointJson['error']);
$tokenEndpointResponse = $s->handleTokenEndpointRequest($req);
$this->assertEquals(400, $tokenEndpointResponse->getStatusCode());
$tokenEndpointJson = json_decode((string) $tokenEndpointResponse->getBody(), true);
$this->assertEquals('invalid_grant', $tokenEndpointJson['error']);
$res = $endpointHandler($req);
$this->assertEquals(400, $res->getStatusCode());
$resJson = json_decode((string) $res->getBody(), true);
$this->assertEquals('invalid_grant', $resJson['error']);
}
}
}