Skip to content

Commit a39a4bb

Browse files
Create expected_final_url logic, to match expected_url/expected_redirect_url
1 parent 0b323f1 commit a39a4bb

File tree

2 files changed

+625
-62
lines changed

2 files changed

+625
-62
lines changed

django_expanded_test_cases/test_cases/integration_test_case.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,7 @@ def assertResponse(
176176
expected_status=200,
177177
expected_url=None,
178178
expected_redirect_url=None,
179+
expected_final_url=None,
179180
view_should_redirect=None,
180181
url_args=None,
181182
url_kwargs=None,
@@ -395,6 +396,23 @@ def assertResponse(
395396
else:
396397
self.fail('Expected no page redirects, but response processed one or more redirects.')
397398

399+
# Verify final url.
400+
# TODO: Inconsistent expected_x_url handling.
401+
# See project issue 22 (https://github.com/brodriguez8774/django-expanded-test-cases/issues/22).
402+
if expected_final_url is not None and response.url_data.computed.final_url != expected_final_url:
403+
self.fail(
404+
(
405+
'Expected final_url and actual final_url do not match. \n'
406+
'Expected final_url: \n'
407+
'"{0}" \n'
408+
'Actual final_url: \n'
409+
'"{1}" \n'
410+
).format(
411+
expected_final_url,
412+
response.url_data.computed.final_url,
413+
)
414+
)
415+
398416
# Verify page redirect.
399417
# This is more specific than the above "view_should_redirect" assertion, so intentionally done second.
400418
# TODO: Inconsistent expected_x_url handling.
@@ -505,6 +523,7 @@ def assertGetResponse(
505523
expected_status=200,
506524
expected_url=None,
507525
expected_redirect_url=None,
526+
expected_final_url=None,
508527
view_should_redirect=None,
509528
url_args=None,
510529
url_kwargs=None,
@@ -553,6 +572,7 @@ def assertGetResponse(
553572
expected_status=expected_status,
554573
expected_url=expected_url,
555574
expected_redirect_url=expected_redirect_url,
575+
expected_final_url=expected_final_url,
556576
view_should_redirect=view_should_redirect,
557577
url_args=url_args,
558578
url_kwargs=url_kwargs,
@@ -589,6 +609,7 @@ def assertPostResponse(
589609
expected_status=200,
590610
expected_url=None,
591611
expected_redirect_url=None,
612+
expected_final_url=None,
592613
view_should_redirect=None,
593614
url_args=None,
594615
url_kwargs=None,
@@ -643,6 +664,7 @@ def assertPostResponse(
643664
expected_status=expected_status,
644665
expected_url=expected_url,
645666
expected_redirect_url=expected_redirect_url,
667+
expected_final_url=expected_final_url,
646668
view_should_redirect=view_should_redirect,
647669
url_args=url_args,
648670
url_kwargs=url_kwargs,
@@ -680,6 +702,7 @@ def assertJsonResponse(
680702
expected_status=200,
681703
expected_url=None,
682704
expected_redirect_url=None,
705+
expected_final_url=None,
683706
view_should_redirect=None,
684707
url_args=None,
685708
url_kwargs=None,
@@ -759,6 +782,7 @@ def assertJsonResponse(
759782
expected_status=expected_status,
760783
expected_url=expected_url,
761784
expected_redirect_url=expected_redirect_url,
785+
expected_final_url=expected_final_url,
762786
view_should_redirect=view_should_redirect,
763787
url_args=url_args,
764788
url_kwargs=url_kwargs,

0 commit comments

Comments
 (0)