From 5c7440dbca548af52c3aafd6877a7cfcfa08e295 Mon Sep 17 00:00:00 2001 From: Ryan Thomson Date: Sun, 11 Dec 2022 16:19:29 -0500 Subject: [PATCH] Add test case for overriding default pk_field --- tests/test_model_serializer.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/test_model_serializer.py b/tests/test_model_serializer.py index 055ff3cc5..aab609b9f 100644 --- a/tests/test_model_serializer.py +++ b/tests/test_model_serializer.py @@ -754,6 +754,20 @@ class TestUUIDForeignKeyMapping(TestCase): """) self.assertEqual(repr(TestSerializer()), expected) + def test_uuid_pk_relation_override(self): + class TestSerializer(serializers.ModelSerializer): + class Meta: + model = UUIDForeignKeyModel + fields = '__all__' + extra_kwargs = {'foreign_key': {'pk_field': serializers.UUIDField(format='int')}} + + expected = dedent(""" + TestSerializer(): + id = IntegerField(label='ID', read_only=True) + foreign_key = PrimaryKeyRelatedField(pk_field=UUIDField(format='int'), queryset=UUIDForeignKeyTarget.objects.all()) + """) + self.assertEqual(repr(TestSerializer()), expected) + class DisplayValueTargetModel(models.Model): name = models.CharField(max_length=100)