From 4c4cfe0ea851e38d80e8a08475f0152fda8b0149 Mon Sep 17 00:00:00 2001 From: Daniel Grams Date: Mon, 25 Jan 2021 13:42:55 +0100 Subject: [PATCH] New flag AdminUnit.incoming_reference_requests_allowed #91 --- tests/views/test_admin.py | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/tests/views/test_admin.py b/tests/views/test_admin.py index 952d4ad..e995262 100644 --- a/tests/views/test_admin.py +++ b/tests/views/test_admin.py @@ -107,3 +107,41 @@ def test_admin_user_update(client, seeder, utils, app, mocker, db, db_error): user = User.query.get_or_404(other_user_id) assert len(user.roles) == 1 assert any(r.name == "admin" for r in user.roles) + + +@pytest.mark.parametrize("db_error", [True, False]) +def test_admin_admin_unit_update(client, seeder, utils, app, mocker, db, db_error): + user_id, admin_unit_id = seeder.setup_base(True) + + with app.app_context(): + from project.models import AdminUnit + + admin_unit = AdminUnit.query.get_or_404(admin_unit_id) + admin_unit.incoming_reference_requests_allowed = False + db.session.commit() + + url = utils.get_url("admin_admin_unit_update", id=admin_unit_id) + response = utils.get_ok(url) + + if db_error: + utils.mock_db_commit(mocker) + + response = utils.post_form( + url, + response, + { + "incoming_reference_requests_allowed": "y", + }, + ) + + if db_error: + utils.assert_response_db_error(response) + return + + utils.assert_response_redirect(response, "admin_admin_units") + + with app.app_context(): + from project.models import AdminUnit + + admin_unit = AdminUnit.query.get_or_404(admin_unit_id) + assert admin_unit.incoming_reference_requests_allowed