def test_ListField_validates_list_values(self): field = ListField() try: field.validate([1, u'hello world']) except ValidationError: self.fail('ListField.validate() raised ValidationError unexpectedly')
def test_ListField_validates_with_min_and_max_length(self): field = ListField(IntField(), min_len=3, max_len=5) try: field.validate([1, 2, 3]) field.validate([1, 2, 3, 4, 5]) except ValidationError: self.fail('ListField.validate() raised ValidationError unexpectedly')
def test_ListField_validates_list_values_with_given_type(self): field = ListField(UnicodeField()) try: field.validate([]) field.validate([u'hello moon', u'hello world']) except ValidationError: self.fail('ListField raised ValidationError unexpectedly')
def test_ListField_validates_list_values(self): field = ListField() try: field.validate([1, u'hello world']) except ValidationError: self.fail( 'ListField.validate() raised ValidationError unexpectedly')
def test_ListField_raises_ValidationError_with_length_outside_range(self): field = ListField(IntField(), min_len=3, max_len=5) self.assertRaises(ValidationError, field.validate, []) self.assertRaises(ValidationError, field.validate, [1, 2]) self.assertRaises(ValidationError, field.validate, [1, 2, 3, 4, 5, 6]) self.assertRaises(ValidationError, field.validate, None)
def test_ListField_validates_with_min_and_max_length(self): field = ListField(IntField(), min_len=3, max_len=5) try: field.validate([1, 2, 3]) field.validate([1, 2, 3, 4, 5]) except ValidationError: self.fail( 'ListField.validate() raised ValidationError unexpectedly')
def test_ListField_from_json_converts_list_with_byte_strings_to_list(self): f = ListField(UnicodeField()) self.assertEquals([u"hello", u"world"], f.from_json(["hello", "world"]))
def test_ListField_to_json_converts_list_with_unicode_strings_to_byte_strings(self): f = ListField(DatetimeField(), UnicodeField(), IntField()) self.assertEquals(["foo", "bar"], f.to_json([u"foo", u"bar"]))
def test_ListField_raises_ValidationError_on_incorrect_list_element_type( self): field = ListField(UnicodeField()) self.assertRaises(ValidationError, field.validate, u'just a string') self.assertRaises(ValidationError, field.validate, [u'hello', 42])
def test_ListField_from_json_converts_list_with_byte_strings_to_list(self): f = ListField(UnicodeField()) self.assertEquals([u'hello', u'world'], f.from_json(['hello', 'world']))
def test_ListField_to_json_converts_list_with_unicode_strings_to_byte_strings( self): f = ListField(DatetimeField(), UnicodeField(), IntField()) self.assertEquals(['foo', 'bar'], f.to_json([u'foo', u'bar']))