@@ -275,47 +275,47 @@ def is_logged_in(client):
275
275
276
276
277
277
@pytest .mark .django_db
278
- def test_rp_initiated_logout_get (loggend_in_client , rp_settings ):
279
- rsp = loggend_in_client .get (reverse ("oauth2_provider:rp-initiated-logout" ), data = {})
278
+ def test_rp_initiated_logout_get (logged_in_client , rp_settings ):
279
+ rsp = logged_in_client .get (reverse ("oauth2_provider:rp-initiated-logout" ), data = {})
280
280
assert rsp .status_code == 200
281
- assert is_logged_in (loggend_in_client )
281
+ assert is_logged_in (logged_in_client )
282
282
283
283
284
284
@pytest .mark .django_db
285
- def test_rp_initiated_logout_get_id_token (loggend_in_client , oidc_tokens , rp_settings ):
286
- rsp = loggend_in_client .get (
285
+ def test_rp_initiated_logout_get_id_token (logged_in_client , oidc_tokens , rp_settings ):
286
+ rsp = logged_in_client .get (
287
287
reverse ("oauth2_provider:rp-initiated-logout" ), data = {"id_token_hint" : oidc_tokens .id_token }
288
288
)
289
289
assert rsp .status_code == 302
290
290
assert rsp ["Location" ] == "http://testserver/"
291
- assert not is_logged_in (loggend_in_client )
291
+ assert not is_logged_in (logged_in_client )
292
292
293
293
294
294
@pytest .mark .django_db
295
- def test_rp_initiated_logout_get_revoked_id_token (loggend_in_client , oidc_tokens , rp_settings ):
295
+ def test_rp_initiated_logout_get_revoked_id_token (logged_in_client , oidc_tokens , rp_settings ):
296
296
validator = oauth2_settings .OAUTH2_VALIDATOR_CLASS ()
297
297
validator ._load_id_token (oidc_tokens .id_token ).revoke ()
298
- rsp = loggend_in_client .get (
298
+ rsp = logged_in_client .get (
299
299
reverse ("oauth2_provider:rp-initiated-logout" ), data = {"id_token_hint" : oidc_tokens .id_token }
300
300
)
301
301
assert rsp .status_code == 400
302
- assert is_logged_in (loggend_in_client )
302
+ assert is_logged_in (logged_in_client )
303
303
304
304
305
305
@pytest .mark .django_db
306
- def test_rp_initiated_logout_get_id_token_redirect (loggend_in_client , oidc_tokens , rp_settings ):
307
- rsp = loggend_in_client .get (
306
+ def test_rp_initiated_logout_get_id_token_redirect (logged_in_client , oidc_tokens , rp_settings ):
307
+ rsp = logged_in_client .get (
308
308
reverse ("oauth2_provider:rp-initiated-logout" ),
309
309
data = {"id_token_hint" : oidc_tokens .id_token , "post_logout_redirect_uri" : "http://example.org" },
310
310
)
311
311
assert rsp .status_code == 302
312
312
assert rsp ["Location" ] == "http://example.org"
313
- assert not is_logged_in (loggend_in_client )
313
+ assert not is_logged_in (logged_in_client )
314
314
315
315
316
316
@pytest .mark .django_db
317
- def test_rp_initiated_logout_get_id_token_redirect_with_state (loggend_in_client , oidc_tokens , rp_settings ):
318
- rsp = loggend_in_client .get (
317
+ def test_rp_initiated_logout_get_id_token_redirect_with_state (logged_in_client , oidc_tokens , rp_settings ):
318
+ rsp = logged_in_client .get (
319
319
reverse ("oauth2_provider:rp-initiated-logout" ),
320
320
data = {
321
321
"id_token_hint" : oidc_tokens .id_token ,
@@ -325,26 +325,26 @@ def test_rp_initiated_logout_get_id_token_redirect_with_state(loggend_in_client,
325
325
)
326
326
assert rsp .status_code == 302
327
327
assert rsp ["Location" ] == "http://example.org?state=987654321"
328
- assert not is_logged_in (loggend_in_client )
328
+ assert not is_logged_in (logged_in_client )
329
329
330
330
331
331
@pytest .mark .django_db
332
332
def test_rp_initiated_logout_get_id_token_missmatch_client_id (
333
- loggend_in_client , oidc_tokens , public_application , rp_settings
333
+ logged_in_client , oidc_tokens , public_application , rp_settings
334
334
):
335
- rsp = loggend_in_client .get (
335
+ rsp = logged_in_client .get (
336
336
reverse ("oauth2_provider:rp-initiated-logout" ),
337
337
data = {"id_token_hint" : oidc_tokens .id_token , "client_id" : public_application .client_id },
338
338
)
339
339
assert rsp .status_code == 400
340
- assert is_logged_in (loggend_in_client )
340
+ assert is_logged_in (logged_in_client )
341
341
342
342
343
343
@pytest .mark .django_db
344
344
def test_rp_initiated_logout_public_client_redirect_client_id (
345
- loggend_in_client , oidc_non_confidential_tokens , public_application , rp_settings
345
+ logged_in_client , oidc_non_confidential_tokens , public_application , rp_settings
346
346
):
347
- rsp = loggend_in_client .get (
347
+ rsp = logged_in_client .get (
348
348
reverse ("oauth2_provider:rp-initiated-logout" ),
349
349
data = {
350
350
"id_token_hint" : oidc_non_confidential_tokens .id_token ,
@@ -353,15 +353,15 @@ def test_rp_initiated_logout_public_client_redirect_client_id(
353
353
},
354
354
)
355
355
assert rsp .status_code == 302
356
- assert not is_logged_in (loggend_in_client )
356
+ assert not is_logged_in (logged_in_client )
357
357
358
358
359
359
@pytest .mark .django_db
360
360
def test_rp_initiated_logout_public_client_strict_redirect_client_id (
361
- loggend_in_client , oidc_non_confidential_tokens , public_application , oauth2_settings
361
+ logged_in_client , oidc_non_confidential_tokens , public_application , oauth2_settings
362
362
):
363
363
oauth2_settings .update (presets .OIDC_SETTINGS_RP_LOGOUT_STRICT_REDIRECT_URI )
364
- rsp = loggend_in_client .get (
364
+ rsp = logged_in_client .get (
365
365
reverse ("oauth2_provider:rp-initiated-logout" ),
366
366
data = {
367
367
"id_token_hint" : oidc_non_confidential_tokens .id_token ,
@@ -370,65 +370,65 @@ def test_rp_initiated_logout_public_client_strict_redirect_client_id(
370
370
},
371
371
)
372
372
assert rsp .status_code == 400
373
- assert is_logged_in (loggend_in_client )
373
+ assert is_logged_in (logged_in_client )
374
374
375
375
376
376
@pytest .mark .django_db
377
- def test_rp_initiated_logout_get_id_token_client_id (loggend_in_client , oidc_tokens , rp_settings ):
378
- rsp = loggend_in_client .get (
377
+ def test_rp_initiated_logout_get_id_token_client_id (logged_in_client , oidc_tokens , rp_settings ):
378
+ rsp = logged_in_client .get (
379
379
reverse ("oauth2_provider:rp-initiated-logout" ), data = {"client_id" : oidc_tokens .application .client_id }
380
380
)
381
381
assert rsp .status_code == 200
382
- assert is_logged_in (loggend_in_client )
382
+ assert is_logged_in (logged_in_client )
383
383
384
384
385
385
@pytest .mark .django_db
386
- def test_rp_initiated_logout_post (loggend_in_client , oidc_tokens , rp_settings ):
386
+ def test_rp_initiated_logout_post (logged_in_client , oidc_tokens , rp_settings ):
387
387
form_data = {
388
388
"client_id" : oidc_tokens .application .client_id ,
389
389
}
390
- rsp = loggend_in_client .post (reverse ("oauth2_provider:rp-initiated-logout" ), form_data )
390
+ rsp = logged_in_client .post (reverse ("oauth2_provider:rp-initiated-logout" ), form_data )
391
391
assert rsp .status_code == 400
392
- assert is_logged_in (loggend_in_client )
392
+ assert is_logged_in (logged_in_client )
393
393
394
394
395
395
@pytest .mark .django_db
396
- def test_rp_initiated_logout_post_allowed (loggend_in_client , oidc_tokens , rp_settings ):
396
+ def test_rp_initiated_logout_post_allowed (logged_in_client , oidc_tokens , rp_settings ):
397
397
form_data = {"client_id" : oidc_tokens .application .client_id , "allow" : True }
398
- rsp = loggend_in_client .post (reverse ("oauth2_provider:rp-initiated-logout" ), form_data )
398
+ rsp = logged_in_client .post (reverse ("oauth2_provider:rp-initiated-logout" ), form_data )
399
399
assert rsp .status_code == 302
400
400
assert rsp ["Location" ] == "http://testserver/"
401
- assert not is_logged_in (loggend_in_client )
401
+ assert not is_logged_in (logged_in_client )
402
402
403
403
404
404
@pytest .mark .django_db
405
405
@pytest .mark .oauth2_settings (presets .OIDC_SETTINGS_RP_LOGOUT )
406
- def test_rp_initiated_logout_expired_tokens_accept (loggend_in_client , application , expired_id_token ):
406
+ def test_rp_initiated_logout_expired_tokens_accept (logged_in_client , application , expired_id_token ):
407
407
# Accepting expired (but otherwise valid and signed by us) tokens is enabled. Logout should go through.
408
- rsp = loggend_in_client .get (
408
+ rsp = logged_in_client .get (
409
409
reverse ("oauth2_provider:rp-initiated-logout" ),
410
410
data = {
411
411
"id_token_hint" : expired_id_token ,
412
412
"client_id" : application .client_id ,
413
413
},
414
414
)
415
415
assert rsp .status_code == 302
416
- assert not is_logged_in (loggend_in_client )
416
+ assert not is_logged_in (logged_in_client )
417
417
418
418
419
419
@pytest .mark .django_db
420
420
@pytest .mark .oauth2_settings (presets .OIDC_SETTINGS_RP_LOGOUT_DENY_EXPIRED )
421
- def test_rp_initiated_logout_expired_tokens_deny (loggend_in_client , application , expired_id_token ):
421
+ def test_rp_initiated_logout_expired_tokens_deny (logged_in_client , application , expired_id_token ):
422
422
# Expired tokens should not be accepted by default.
423
- rsp = loggend_in_client .get (
423
+ rsp = logged_in_client .get (
424
424
reverse ("oauth2_provider:rp-initiated-logout" ),
425
425
data = {
426
426
"id_token_hint" : expired_id_token ,
427
427
"client_id" : application .client_id ,
428
428
},
429
429
)
430
430
assert rsp .status_code == 400
431
- assert is_logged_in (loggend_in_client )
431
+ assert is_logged_in (logged_in_client )
432
432
433
433
434
434
@pytest .mark .django_db
@@ -498,22 +498,22 @@ def test_userinfo_endpoint_bad_token(oidc_tokens, client):
498
498
499
499
500
500
@pytest .mark .django_db
501
- def test_token_deletion_on_logout (oidc_tokens , loggend_in_client , rp_settings ):
501
+ def test_token_deletion_on_logout (oidc_tokens , logged_in_client , rp_settings ):
502
502
AccessToken = get_access_token_model ()
503
503
IDToken = get_id_token_model ()
504
504
RefreshToken = get_refresh_token_model ()
505
505
assert AccessToken .objects .count () == 1
506
506
assert IDToken .objects .count () == 1
507
507
assert RefreshToken .objects .count () == 1
508
- rsp = loggend_in_client .get (
508
+ rsp = logged_in_client .get (
509
509
reverse ("oauth2_provider:rp-initiated-logout" ),
510
510
data = {
511
511
"id_token_hint" : oidc_tokens .id_token ,
512
512
"client_id" : oidc_tokens .application .client_id ,
513
513
},
514
514
)
515
515
assert rsp .status_code == 302
516
- assert not is_logged_in (loggend_in_client )
516
+ assert not is_logged_in (logged_in_client )
517
517
# Check that all tokens have either been deleted or expired.
518
518
assert all ([token .is_expired () for token in AccessToken .objects .all ()])
519
519
assert all ([token .is_expired () for token in IDToken .objects .all ()])
@@ -563,7 +563,7 @@ def test_token_deletion_on_logout_expired_session(oidc_tokens, client, rp_settin
563
563
564
564
@pytest .mark .django_db
565
565
@pytest .mark .oauth2_settings (presets .OIDC_SETTINGS_RP_LOGOUT_KEEP_TOKENS )
566
- def test_token_deletion_on_logout_disabled (oidc_tokens , loggend_in_client , rp_settings ):
566
+ def test_token_deletion_on_logout_disabled (oidc_tokens , logged_in_client , rp_settings ):
567
567
rp_settings .OIDC_RP_INITIATED_LOGOUT_DELETE_TOKENS = False
568
568
569
569
AccessToken = get_access_token_model ()
@@ -572,15 +572,15 @@ def test_token_deletion_on_logout_disabled(oidc_tokens, loggend_in_client, rp_se
572
572
assert AccessToken .objects .count () == 1
573
573
assert IDToken .objects .count () == 1
574
574
assert RefreshToken .objects .count () == 1
575
- rsp = loggend_in_client .get (
575
+ rsp = logged_in_client .get (
576
576
reverse ("oauth2_provider:rp-initiated-logout" ),
577
577
data = {
578
578
"id_token_hint" : oidc_tokens .id_token ,
579
579
"client_id" : oidc_tokens .application .client_id ,
580
580
},
581
581
)
582
582
assert rsp .status_code == 302
583
- assert not is_logged_in (loggend_in_client )
583
+ assert not is_logged_in (logged_in_client )
584
584
# Check that the tokens have not been expired or deleted.
585
585
assert AccessToken .objects .count () == 1
586
586
assert not any ([token .is_expired () for token in AccessToken .objects .all ()])
0 commit comments