Skip to content

Commit

Permalink
remove standalone test, include test case in regressions tfranzel#274
Browse files Browse the repository at this point in the history
  • Loading branch information
diesieben07 committed Jan 31, 2021

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
1 parent 22d0cf6 commit 5fb9c10
Showing 3 changed files with 33 additions and 261 deletions.
39 changes: 0 additions & 39 deletions tests/test_readonly_related_field.py

This file was deleted.

222 changes: 0 additions & 222 deletions tests/test_readonly_related_field.yml

This file was deleted.

33 changes: 33 additions & 0 deletions tests/test_regressions.py
Original file line number Diff line number Diff line change
@@ -1293,3 +1293,36 @@ def view_func(request, format=None):
assert 'explode' in parameter
assert 'style' in parameter
assert parameter['schema']['type'] == 'array'


def test_incorrect_foreignkey_type_on_readonly_field(no_warnings):
class ReferencingModel(models.Model):
id = models.UUIDField(primary_key=True)
referenced_model = models.ForeignKey(SimpleModel, on_delete=models.CASCADE)
referenced_model_ro = models.ForeignKey(SimpleModel, on_delete=models.CASCADE)
referenced_model_m2m = models.ManyToManyField(SimpleModel)
referenced_model_m2m_ro = models.ManyToManyField(SimpleModel)

class ReferencingModelSerializer(serializers.ModelSerializer):
indirect_referenced_model_ro = serializers.PrimaryKeyRelatedField(
source='referenced_model',
read_only=True,
)

class Meta:
fields = '__all__'
read_only_fields = ['id', 'referenced_model_ro', 'referenced_model_m2m_ro']
model = ReferencingModel

class ReferencingModelViewset(viewsets.ModelViewSet):
serializer_class = ReferencingModelSerializer
queryset = ReferencingModel.objects.all()

schema = generate_schema('/x/', ReferencingModelViewset)
properties = schema['components']['schemas']['ReferencingModel']['properties']

assert properties['referenced_model']['type'] == 'integer'
assert properties['referenced_model_ro']['type'] == 'integer'
assert properties['referenced_model_m2m']['items']['type'] == 'integer'
assert properties['referenced_model_m2m_ro']['items']['type'] == 'integer'
assert properties['indirect_referenced_model_ro']['type'] == 'integer'

0 comments on commit 5fb9c10

Please sign in to comment.