コード例 #1
0
 def test_with_minimal_argument(self):
     # 1st case
     serializer = modelserializer_factory(Person)(data=self.minimal_data)
     assert serializer.is_valid() is True
     assert serializer.data == dict(name="John Doe")
     # 2nd case
     serializer = modelserializer_factory(Person)(data=self.person_data)
     assert serializer.is_valid() is True
     assert serializer.data == dict(name="Ali Baba", age=126)
コード例 #2
0
 def test_extra_field_modelform_factory(self):
     serializer = modelserializer_factory(
         Person,
         fields=['name']
     )(data={"name": "joe", "age": 34})
     serializer.is_valid()
     assert serializer.data == dict({"name": "joe"})
コード例 #3
0
 def test_limit_non_existant_field(self):
     # 1st case: created by inheritance
     with pytest.raises(ImproperlyConfigured):
         serializer = InvalidPersonSerializer(data={"name": "joe"})
         serializer.is_valid()
     # 2nd case: created by .modelserializer_factory()
     with pytest.raises(ImproperlyConfigured):
         serializer = modelserializer_factory(Person, fields=['nonexistant'])(data={"name": "joe"})
         serializer.is_valid()
コード例 #4
0
 def test_metadata_py3(self):
     metadata = VerboseMetadata()
     serializer = modelserializer_factory(Person)(data=self.person_data)
     serializer_info = metadata.get_serializer_info(serializer)
     assert list(serializer_info.keys()) == ['id', 'name', 'age']
コード例 #5
0
 def test_excluding_fields(self):
     serializer = modelserializer_factory(Person, exclude=['name'])(data=self.person_data)
     assert serializer.is_valid() is True
     assert serializer.data == dict(age=126)
コード例 #6
0
 def test_exclude_fields(self):
     serializer = modelserializer_factory(Person, exclude=['age'])(data=self.person_data)
     assert serializer.is_valid() is True
     assert serializer.data == dict(name="Ali Baba")
コード例 #7
0
 def test_including_all_fields(self):
     serializer = modelserializer_factory(Person, fields="__all__")(data=self.person_data)
     assert serializer.is_valid() is True
     assert serializer.data == dict(name="Ali Baba", age=126)
コード例 #8
0
 def test_no_fields(self):
     serializer = modelserializer_factory(Person, fields=())(data=self.person_data)
     assert serializer.is_valid() is True
     assert serializer.data == dict()
コード例 #9
0
 def test_serializer_name(self):
     serializer = modelserializer_factory(Person)(data=self.minimal_data)
     assert serializer.__class__.__name__ == 'PersonSerializer'