Skip to content

Commit 1357553

Browse files
committed
GH-36: Test access_token memorization
1 parent e0ca1d4 commit 1357553

File tree

2 files changed

+22
-0
lines changed

2 files changed

+22
-0
lines changed

tests/conftest.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,10 @@ def auth(request: Request):
7878
)
7979
return response
8080

81+
@app_router.get("/access-token")
82+
def access_token(request: Request):
83+
return Response(request.auth.provider.access_token)
84+
8185
if with_idp:
8286
@app_router.get("/oauth2/{provider}/token")
8387
async def token(request: Request, provider: str):

tests/test_oauth2.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,3 +62,21 @@ async def test_oauth2_csrf_workflow(get_app):
6262
await oauth2_workflow(get_app, idp=True, ssr=False, authorize_query=aq, token_query=tq, use_header=True)
6363
except AssertionError:
6464
assert aq != tq
65+
66+
67+
@pytest.mark.anyio
68+
async def test_core_access_token(get_app):
69+
async with AsyncClient(app=get_app(with_idp=True, with_ssr=True), base_url="http://test") as client:
70+
response = await client.get("/oauth2/test/authorize")
71+
authorization_endpoint = response.headers.get("location")
72+
response = await client.get(authorization_endpoint)
73+
token_url = response.headers.get("location")
74+
query = {k: v[0] for k, v in parse_qs(urlparse(token_url).query).items()}
75+
token_url = "%s?%s" % (token_url.split("?")[0], urlencode(query))
76+
await client.get(token_url)
77+
78+
response = await client.get("/access-token")
79+
assert response.content != b""
80+
81+
response = await client.get("/access-token")
82+
assert response.content != b""

0 commit comments

Comments
 (0)