summaryrefslogtreecommitdiff
path: root/tests/basic/tests.py
diff options
context:
space:
mode:
authorCsirmaz Bendegúz <csirmazbendeguz@gmail.com>2024-09-10 04:46:50 +0800
committerGitHub <noreply@github.com>2024-09-09 17:46:50 -0300
commit5865ff5adcf64da03d306dc32b36e87ae6927c85 (patch)
tree6fde8c074dc1ec5dab5db7c045f0ef40e649b719 /tests/basic/tests.py
parentcdbd31960e0cf41063b3efac97292ee0ccc262bb (diff)
Refs #373 -- Added Model._is_pk_set() abstraction to check if a Model's PK is set.
Diffstat (limited to 'tests/basic/tests.py')
-rw-r--r--tests/basic/tests.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/basic/tests.py b/tests/basic/tests.py
index 6d34a95805..cb267be0b1 100644
--- a/tests/basic/tests.py
+++ b/tests/basic/tests.py
@@ -661,6 +661,31 @@ class ModelTest(TestCase):
headline__startswith="Area",
)
+ def test_is_pk_unset(self):
+ cases = [
+ Article(),
+ Article(id=None),
+ ]
+ for case in cases:
+ with self.subTest(case=case):
+ self.assertIs(case._is_pk_set(), False)
+
+ def test_is_pk_set(self):
+ def new_instance():
+ a = Article(pub_date=datetime.today())
+ a.save()
+ return a
+
+ cases = [
+ Article(id=1),
+ Article(id=0),
+ Article.objects.create(pub_date=datetime.today()),
+ new_instance(),
+ ]
+ for case in cases:
+ with self.subTest(case=case):
+ self.assertIs(case._is_pk_set(), True)
+
class ModelLookupTest(TestCase):
@classmethod