summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorSimon Charette <charette.s@gmail.com>2025-01-25 19:13:13 -0500
committerSarah Boyce <42296566+sarahboyce@users.noreply.github.com>2025-01-28 13:19:36 +0100
commitd4d2e09f19e5d764b8b4df34f048f8babf670e8e (patch)
treed7db6898f70be876a8ec1431559e3de0854adf9b /tests
parent9fe17213a66ffc58a71e1fd7d50dbabb3a0c499c (diff)
[5.2.x] Fixed #36122 -- Raised FieldError when updating with composite reference value.
Thanks Jacob Walls for the report and test. Backport of efec74b90868c2e611f863bf4301d92ce08067e8 from main.
Diffstat (limited to 'tests')
-rw-r--r--tests/composite_pk/test_update.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/tests/composite_pk/test_update.py b/tests/composite_pk/test_update.py
index 5bc53f1fe1..697383b007 100644
--- a/tests/composite_pk/test_update.py
+++ b/tests/composite_pk/test_update.py
@@ -1,5 +1,6 @@
from django.core.exceptions import FieldError
from django.db import connection
+from django.db.models import F
from django.test import TestCase
from .models import Comment, Tenant, TimeStamped, Token, User
@@ -182,3 +183,11 @@ class CompositePKUpdateTests(TestCase):
msg = "Composite primary key fields must be updated individually."
with self.assertRaisesMessage(FieldError, msg):
qs.update(pk=(1, 10))
+
+ def test_update_value_not_composite(self):
+ msg = (
+ "Composite primary keys expressions are not allowed in this "
+ "query (text=F('pk'))."
+ )
+ with self.assertRaisesMessage(FieldError, msg):
+ Comment.objects.update(text=F("pk"))