diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-05-29 12:05:49 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-06-17 13:21:28 +0200 |
commit | 0e30743556cdf9b6f8268cb8e24b24abf76a2e2b (patch) | |
tree | d4d6c917902002f8c4a86b3c9f65ecacad12d7ec /archaeological_finds/tests.py | |
parent | 81ee5b2f6d5bb4868128296108a0e99074d1ca72 (diff) | |
download | Ishtar-0e30743556cdf9b6f8268cb8e24b24abf76a2e2b.tar.bz2 Ishtar-0e30743556cdf9b6f8268cb8e24b24abf76a2e2b.zip |
QA: duplicate find
Diffstat (limited to 'archaeological_finds/tests.py')
-rw-r--r-- | archaeological_finds/tests.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/archaeological_finds/tests.py b/archaeological_finds/tests.py index 806696d4c..acd86727b 100644 --- a/archaeological_finds/tests.py +++ b/archaeological_finds/tests.py @@ -1084,6 +1084,42 @@ class FindQATest(FindInit, TestCase): self.alt_user.user_permissions.add(Permission.objects.get( codename='change_find')) + def test_duplicate(self): + find = self.finds[0] + default_desc = "Description for duplicate" + find.description = default_desc + find.save() + c = Client() + url = reverse('find-qa-duplicate', args=[find.pk]) + response = c.get(url) + self.assertRedirects(response, '/') + + c = Client() + c.login(username=self.username, password=self.password) + response = c.get(url) + self.assertEqual(response.status_code, 200) + + c = Client() + c.login(username=self.alt_username, password=self.alt_password) + response = c.get(url) + self.assertEqual(response.status_code, 200) + + data = { + "denomination": "clone", + "label": "clone - free id" + } + nb_find = models.Find.objects.count() + nb_bf = models.BaseFind.objects.count() + response = c.post(url, data) + self.assertEqual(response.status_code, 302) # success redirect + self.assertEqual(models.Find.objects.count(), nb_find + 1) + self.assertEqual(models.BaseFind.objects.count(), nb_bf + 1) + new = models.Find.objects.order_by('-pk').all()[0] + self.assertEqual(new.description, default_desc) + new_bf = models.BaseFind.objects.order_by('-pk').all()[0] + base_bf = find.get_first_base_find() + self.assertEqual(new_bf.context_record, base_bf.context_record) + def test_bulk_update(self): c = Client() pks = u"{}-{}".format(self.finds[0].pk, self.finds[1].pk) |