mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-02-03 05:04:31 +03:00
Test tweaking
This commit is contained in:
parent
f90049316a
commit
12ccb0fe8a
|
@ -18,10 +18,16 @@ def dedent(blocktext):
|
||||||
# Testing regular field mappings
|
# Testing regular field mappings
|
||||||
|
|
||||||
class CustomField(models.Field):
|
class CustomField(models.Field):
|
||||||
|
"""
|
||||||
|
A custom model field simply for testing purposes.
|
||||||
|
"""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
class RegularFieldsModel(models.Model):
|
class RegularFieldsModel(models.Model):
|
||||||
|
"""
|
||||||
|
A model class for testing regular flat fields.
|
||||||
|
"""
|
||||||
auto_field = models.AutoField(primary_key=True)
|
auto_field = models.AutoField(primary_key=True)
|
||||||
big_integer_field = models.BigIntegerField()
|
big_integer_field = models.BigIntegerField()
|
||||||
boolean_field = models.BooleanField(default=False)
|
boolean_field = models.BooleanField(default=False)
|
||||||
|
@ -121,12 +127,12 @@ class TestRegularFieldMappings(TestCase):
|
||||||
class TestSerializer(serializers.ModelSerializer):
|
class TestSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = RegularFieldsModel
|
model = RegularFieldsModel
|
||||||
fields = ('pk', 'char_field')
|
fields = ('auto_field', 'char_field')
|
||||||
extra_kwargs = {'char_field': {'default': 'extra'}}
|
extra_kwargs = {'char_field': {'default': 'extra'}}
|
||||||
|
|
||||||
expected = dedent("""
|
expected = dedent("""
|
||||||
TestSerializer():
|
TestSerializer():
|
||||||
pk = IntegerField(label='Auto field', read_only=True)
|
auto_field = IntegerField(read_only=True)
|
||||||
char_field = CharField(default='extra', max_length=100)
|
char_field = CharField(default='extra', max_length=100)
|
||||||
""")
|
""")
|
||||||
self.assertEqual(repr(TestSerializer()), expected)
|
self.assertEqual(repr(TestSerializer()), expected)
|
||||||
|
@ -354,14 +360,12 @@ class TestIntegration(TestCase):
|
||||||
self.instance.many_to_many = self.many_to_many_targets
|
self.instance.many_to_many = self.many_to_many_targets
|
||||||
self.instance.save()
|
self.instance.save()
|
||||||
|
|
||||||
|
def test_pk_retrival(self):
|
||||||
class TestSerializer(serializers.ModelSerializer):
|
class TestSerializer(serializers.ModelSerializer):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = RelationalModel
|
model = RelationalModel
|
||||||
|
|
||||||
self.serializer_cls = TestSerializer
|
serializer = TestSerializer(self.instance)
|
||||||
|
|
||||||
def test_pk_retrival(self):
|
|
||||||
serializer = self.serializer_cls(self.instance)
|
|
||||||
expected = {
|
expected = {
|
||||||
'id': self.instance.pk,
|
'id': self.instance.pk,
|
||||||
'foreign_key': self.foreign_key_target.pk,
|
'foreign_key': self.foreign_key_target.pk,
|
||||||
|
@ -372,6 +376,10 @@ class TestIntegration(TestCase):
|
||||||
self.assertEqual(serializer.data, expected)
|
self.assertEqual(serializer.data, expected)
|
||||||
|
|
||||||
def test_pk_create(self):
|
def test_pk_create(self):
|
||||||
|
class TestSerializer(serializers.ModelSerializer):
|
||||||
|
class Meta:
|
||||||
|
model = RelationalModel
|
||||||
|
|
||||||
new_foreign_key = ForeignKeyTargetModel.objects.create(
|
new_foreign_key = ForeignKeyTargetModel.objects.create(
|
||||||
name='foreign_key'
|
name='foreign_key'
|
||||||
)
|
)
|
||||||
|
@ -390,7 +398,7 @@ class TestIntegration(TestCase):
|
||||||
}
|
}
|
||||||
|
|
||||||
# Serializer should validate okay.
|
# Serializer should validate okay.
|
||||||
serializer = self.serializer_cls(data=data)
|
serializer = TestSerializer(data=data)
|
||||||
assert serializer.is_valid()
|
assert serializer.is_valid()
|
||||||
|
|
||||||
# Creating the instance, relationship attributes should be set.
|
# Creating the instance, relationship attributes should be set.
|
||||||
|
@ -415,6 +423,10 @@ class TestIntegration(TestCase):
|
||||||
self.assertEqual(serializer.data, expected)
|
self.assertEqual(serializer.data, expected)
|
||||||
|
|
||||||
def test_pk_update(self):
|
def test_pk_update(self):
|
||||||
|
class TestSerializer(serializers.ModelSerializer):
|
||||||
|
class Meta:
|
||||||
|
model = RelationalModel
|
||||||
|
|
||||||
new_foreign_key = ForeignKeyTargetModel.objects.create(
|
new_foreign_key = ForeignKeyTargetModel.objects.create(
|
||||||
name='foreign_key'
|
name='foreign_key'
|
||||||
)
|
)
|
||||||
|
@ -433,7 +445,7 @@ class TestIntegration(TestCase):
|
||||||
}
|
}
|
||||||
|
|
||||||
# Serializer should validate okay.
|
# Serializer should validate okay.
|
||||||
serializer = self.serializer_cls(self.instance, data=data)
|
serializer = TestSerializer(self.instance, data=data)
|
||||||
assert serializer.is_valid()
|
assert serializer.is_valid()
|
||||||
|
|
||||||
# Creating the instance, relationship attributes should be set.
|
# Creating the instance, relationship attributes should be set.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user