diff options
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/tests.py | 18 |
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): |