From a7742f06bcc507d659b97f1513781ddfddeff734 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20Barrois?= Date: Tue, 7 Jul 2020 09:33:19 +0200 Subject: Add tests for Django's get_or_create. Related to issue #97. --- tests/test_django.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/test_django.py b/tests/test_django.py index 5fff8a9..3361a9b 100644 --- a/tests/test_django.py +++ b/tests/test_django.py @@ -261,3 +261,17 @@ class DbInteractingTestCase(DjangoTestCase): obj2 = models.VersionModel.objects.get(pk=o2.pk) self.assertEqual(o2.version, obj2.version) + + def test_get_or_create(self): + o1, created = models.VersionModel.objects.get_or_create(version=Version('0.1.1'), spec=SimpleSpec('==0.4.3')) + self.assertTrue(created) + self.assertIsNotNone(o1.pk) + self.assertEqual(Version('0.1.1'), o1.version) + self.assertEqual(SimpleSpec('==0.4.3'), o1.spec) + + o2, created = models.VersionModel.objects.get_or_create(version=Version('0.1.1'), spec=SimpleSpec('==0.4.3')) + self.assertFalse(created) + self.assertEqual(o1, o2) + self.assertEqual(o1.pk, o2.pk) + self.assertEqual(Version('0.1.1'), o2.version) + self.assertEqual(SimpleSpec('==0.4.3'), o2.spec) -- cgit v1.2.1