Files
twofauth-rs/compatibility/cases.oauth.json
T
wt cf25e28c28
Rust verification / test (push) Successful in 4m10s
initial commit
2026-10-28 15:59:54 +07:00

765 lines
20 KiB
JSON
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[
{
"id": "missing-grant-type",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
}
},
{
"id": "unsupported-grant-empty",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {
"grant_type": ""
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
}
},
{
"id": "unsupported-grant-bogus",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {
"grant_type": "bogus"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
}
},
{
"id": "unsupported-grant-password",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {
"grant_type": "password"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
}
},
{
"id": "unsupported-grant-implicit",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {
"grant_type": "implicit"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
}
},
{
"id": "unsupported-grant-personal_access",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {
"grant_type": "personal_access"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
}
},
{
"id": "device-grant-missing-client",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {
"grant_type": "urn:ietf:params:oauth:grant-type:device_code"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_request",
"/error_description": "The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed.",
"/hint": "Check the `client_id` parameter"
}
},
{
"id": "missing-client-client_credentials",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {
"grant_type": "client_credentials"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_request",
"/error_description": "The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed.",
"/hint": "Check the `client_id` parameter"
}
},
{
"id": "unknown-client-client_credentials",
"path": "/oauth/token",
"method": "POST",
"expected_status": 401,
"form": {
"grant_type": "client_credentials",
"client_id": "999999",
"client_secret": "synthetic-invalid-secret"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_client",
"/error_description": "Client authentication failed"
}
},
{
"id": "missing-client-authorization_code",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {
"grant_type": "authorization_code"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_request",
"/error_description": "The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed.",
"/hint": "Check the `client_id` parameter"
}
},
{
"id": "unknown-client-authorization_code",
"path": "/oauth/token",
"method": "POST",
"expected_status": 401,
"form": {
"grant_type": "authorization_code",
"client_id": "999999",
"client_secret": "synthetic-invalid-secret"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_client",
"/error_description": "Client authentication failed"
}
},
{
"id": "missing-client-refresh_token",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {
"grant_type": "refresh_token"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_request",
"/error_description": "The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed.",
"/hint": "Check the `client_id` parameter"
}
},
{
"id": "unknown-client-refresh_token",
"path": "/oauth/token",
"method": "POST",
"expected_status": 401,
"form": {
"grant_type": "refresh_token",
"client_id": "999999",
"client_secret": "synthetic-invalid-secret"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_client",
"/error_description": "Client authentication failed"
}
},
{
"id": "json-unsupported",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"json": {
"grant_type": "bogus"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
}
},
{
"id": "json-null-grant",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"json": {
"grant_type": null
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
}
},
{
"id": "json-array-grant",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"json": {
"grant_type": [
"client_credentials"
]
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
}
},
{
"id": "json-unknown-client",
"path": "/oauth/token",
"method": "POST",
"expected_status": 401,
"json": {
"grant_type": "client_credentials",
"client_id": 999999,
"client_secret": "synthetic-invalid-secret"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_client",
"/error_description": "Client authentication failed"
}
},
{
"id": "malformed-basic-missing-client",
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"form": {
"grant_type": "client_credentials"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_request",
"/error_description": "The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed.",
"/hint": "Check the `client_id` parameter"
},
"headers": {
"Authorization": "Basic not-base64"
}
},
{
"id": "basic-unknown-client",
"path": "/oauth/token",
"method": "POST",
"expected_status": 401,
"form": {
"grant_type": "client_credentials"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": "Basic realm=\"OAuth\"",
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_client",
"/error_description": "Client authentication failed"
},
"headers": {
"Authorization": "Basic OTk5OTk5OnN5bnRoZXRpYy1pbnZhbGlkLXNlY3JldA=="
}
},
{
"id": "bearer-header-unknown-client",
"path": "/oauth/token",
"method": "POST",
"expected_status": 401,
"form": {
"grant_type": "client_credentials",
"client_id": "999999"
},
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": "Bearer realm=\"OAuth\"",
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_client",
"/error_description": "Client authentication failed"
},
"headers": {
"Authorization": "Bearer synthetic-invalid"
}
},
{
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
},
"id": "json-top-array",
"json": []
},
{
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
},
"id": "json-top-number",
"json": 42
},
{
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
},
"id": "json-top-nonempty-array",
"json": [
"bogus"
]
},
{
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/message": "Bad request."
},
"id": "json-malformed",
"raw": "{",
"headers": {
"Content-Type": "application/json"
}
},
{
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/message": "Bad request."
},
"id": "json-top-null",
"raw": "null",
"headers": {
"Content-Type": "application/json"
}
},
{
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
},
"id": "json-empty-body",
"raw": "",
"headers": {
"Content-Type": "application/json"
}
},
{
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
},
"id": "form-scalar-then-array",
"raw": "grant_type=bogus&grant_type[]=client_credentials",
"headers": {
"Content-Type": "application/x-www-form-urlencoded"
}
},
{
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "unsupported_grant_type",
"/error_description": "The authorization grant type is not supported by the authorization server.",
"/hint": "Check that all required parameters have been provided"
},
"id": "form-array-then-scalar",
"raw": "grant_type[]=client_credentials&grant_type=bogus",
"headers": {
"Content-Type": "application/x-www-form-urlencoded"
}
},
{
"path": "/oauth/token",
"method": "POST",
"expected_status": 400,
"compare_headers": [
"Cache-Control",
"Pragma",
"WWW-Authenticate",
"X-RateLimit-Limit"
],
"expected_headers": {
"Cache-Control": "no-cache, private",
"Pragma": null,
"WWW-Authenticate": null,
"X-RateLimit-Limit": "60"
},
"expected_json": {
"/error": "invalid_request",
"/hint": "Check the `client_id` parameter"
},
"id": "unicode-trimmed-grant",
"json": {
"grant_type": " client_credentials"
}
}
]