diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-09-11 11:09:07 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-09-11 11:09:07 +0200 |
commit | 6d7ffac2111f8054517e9574ce5266a5e9254c0e (patch) | |
tree | 409c1ce58887e67759d0296195ced638a50b8a69 /archaeological_operations/tests.py | |
parent | c66302069b6f3c6a56dd58d80348446f7d8a2fd0 (diff) | |
download | Ishtar-6d7ffac2111f8054517e9574ce5266a5e9254c0e.tar.bz2 Ishtar-6d7ffac2111f8054517e9574ce5266a5e9254c0e.zip |
Test QALock
Diffstat (limited to 'archaeological_operations/tests.py')
-rw-r--r-- | archaeological_operations/tests.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/archaeological_operations/tests.py b/archaeological_operations/tests.py index 9fa17b5f9..b3eac54d3 100644 --- a/archaeological_operations/tests.py +++ b/archaeological_operations/tests.py @@ -3146,6 +3146,40 @@ class OperationQATest(OperationInitTest, TestCase): self.alt_user.user_permissions.add(Permission.objects.get( codename='change_operation')) + def test_lock(self): + c = Client() + op0, op1 = self.operations[0], self.operations[1] + pks = u"{}-{}".format(op0.pk, op1.pk) + url = reverse('operation-qa-lock', args=[pks]) + + response = c.get(url) + self.assertEqual(response.status_code, 404) + + c.login(username=self.username, password=self.password) + response = c.get(reverse('operation-qa-lock', args=[pks])) + self.assertEqual(response.status_code, 200) + + response = c.post(url, {"action": "lock"}) + if response.status_code != 200: + self.assertRedirects(response, '/success/') + for ope in (op0, op1): + ope = models.Operation.objects.get(pk=ope.pk) + self.assertEqual(ope.locked, True) + self.assertEqual(ope.lock_user, self.user) + + c = Client() + c.login(username=self.alt_username, password=self.alt_password) + response = c.get(reverse('operation-qa-lock', args=[pks])) + self.assertEqual(response.status_code, 200) + + response = c.post(url, {"action": "lock"}) + if response.status_code != 200: + self.assertRedirects(response, '/success/') + for ope in (op0, op1): + ope = models.Operation.objects.get(pk=ope.pk) + self.assertEqual(ope.locked, True) + self.assertEqual(ope.lock_user, self.alt_user) + def test_bulk_update(self): c = Client() pks = u"{}-{}".format(self.operations[0].pk, self.operations[1].pk) |