summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/tests.py18
1 files changed, 15 insertions, 3 deletions
diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py
index f9c928d5e..52913975b 100644
--- a/ishtar_common/tests.py
+++ b/ishtar_common/tests.py
@@ -604,7 +604,7 @@ class WizardTest(object):
if idx == len(self.steps) - 1:
# last form
if not self.redirect_url:
- redirect_url = "/{}/done".format(self.url_uri)
+ redirect_urls = ["/{}/done".format(self.url_uri)]
else:
dct = {"url_name": self.url_name, "url_uri": self.url_uri, "last_id": 0}
form_key = "selec-" + self.url_name
@@ -614,8 +614,20 @@ class WizardTest(object):
q = self.model.objects
if q.count():
dct["last_id"] = q.order_by("-pk").all()[0].pk
- redirect_url = self.redirect_url.format(**dct)
- self.assertRedirects(response, redirect_url)
+ if not isinstance(self.redirect_url, (list, tuple)):
+ redirect_urls = [self.redirect_url.format(**dct)]
+ else:
+ redirect_urls = [url.format(**dct) for url in self.redirect_url]
+ current_error, ok = None, False
+ for url in redirect_urls:
+ try:
+ self.assertRedirects(response, url)
+ ok = True
+ break
+ except AssertionError as err:
+ current_error = err
+ if not ok:
+ raise current_error
return response
def test_wizard(self):