diff --git a/ihatemoney/tests/common/ihatemoney_testcase.py b/ihatemoney/tests/common/ihatemoney_testcase.py index 0459c150..eda86ab7 100644 --- a/ihatemoney/tests/common/ihatemoney_testcase.py +++ b/ihatemoney/tests/common/ihatemoney_testcase.py @@ -74,13 +74,13 @@ class BaseTestCase(TestCase): follow_redirects=follow_redirects, ) - def import_project(self, id, data, expected_code=200): + def import_project(self, id, data, success=True): resp = self.client.post( f"/{id}/import", data=data, - follow_redirects=True, + # follow_redirects=True, ) - self.assertEqual(resp.status_code, expected_code) + self.assertEqual("/{id}/edit" in str(resp.response), not success) def create_project(self, id, default_currency="XXX", name=None, password=None): name = name or str(id) diff --git a/ihatemoney/web.py b/ihatemoney/web.py index c7deea00..9e0e5eeb 100644 --- a/ihatemoney/web.py +++ b/ihatemoney/web.py @@ -444,7 +444,6 @@ def edit_project(): @main.route("//import", methods=["POST"]) def import_project(): form = ImportProjectForm() - result = 200 if form.validate(): try: data = form.file.data @@ -497,13 +496,10 @@ def import_project(): return redirect(url_for("main.list_bills")) except ValueError as b: flash(b.args[0], category="danger") - result = 400 else: for component, errors in form.errors.items(): flash(_(component + ": ") + ", ".join(errors), category="danger") - result = 400 - - return redirect(url_for(".edit_project"), code=result) + return redirect(request.headers.get("Referer") or url_for(".edit_project")) @main.route("//delete", methods=["POST"])