def test_serialize(self): cv = types.List() result = cv.serialize(("foo", "bar", "baz")) assert isinstance(result, str) assert result == "\n foo\n bar\n baz"
def test_serialize_none(self): cv = types.List() result = cv.serialize(None) assert isinstance(result, str) assert result == ""
def test_deserialize_does_not_double_encode_unicode(self): value = types.List() result = value.deserialize('æ, ø, å') self.assertEqual(('æ', 'ø', 'å'), result) result = value.deserialize('æ\nø\nå') self.assertEqual(('æ', 'ø', 'å'), result)
def test_deserialize_decodes_utf8(self): value = types.List() result = value.deserialize('æ, ø, å'.encode('utf-8')) self.assertEqual(('æ', 'ø', 'å'), result) result = value.deserialize('æ\nø\nå'.encode('utf-8')) self.assertEqual(('æ', 'ø', 'å'), result)
def test_deserialize_conversion_success(self): cv = types.List() result = cv.deserialize(b"foo, bar ,baz ") assert result == ("foo", "bar", "baz") result = cv.deserialize(b" foo,bar\nbar\nbaz") assert result == ("foo,bar", "bar", "baz")
def test_deserialize_does_not_double_encode_unicode(self): cv = types.List() result = cv.deserialize("æ, ø, å") assert result == ("æ", "ø", "å") result = cv.deserialize("æ\nø\nå") assert result == ("æ", "ø", "å")
def test_deserialize_decodes_utf8(self): cv = types.List() result = cv.deserialize("æ, ø, å".encode()) assert result == ("æ", "ø", "å") result = cv.deserialize("æ\nø\nå".encode()) assert result == ("æ", "ø", "å")
def test_deserialize_conversion_success(self): value = types.List() expected = ('foo', 'bar', 'baz') self.assertEqual(expected, value.deserialize(b'foo, bar ,baz ')) expected = ('foo,bar', 'bar', 'baz') self.assertEqual(expected, value.deserialize(b' foo,bar\nbar\nbaz'))
def test_serialize(self): value = types.List() result = value.serialize(('foo', 'bar', 'baz')) self.assertIsInstance(result, bytes) self.assertRegexpMatches(result, r'foo\n\s*bar\n\s*baz')
def test_deserialize_respects_optional(self): value = types.List(optional=True) self.assertEqual(tuple(), value.deserialize(b''))
def test_deserialize_enforces_required(self): value = types.List() self.assertRaises(ValueError, value.deserialize, b'')
def test_deserialize_creates_tuples(self): value = types.List(optional=True) self.assertIsInstance(value.deserialize(b'foo,bar,baz'), tuple) self.assertIsInstance(value.deserialize(b''), tuple)
def test_deserialize_respects_optional(self): cv = types.List(optional=True) assert cv.deserialize(b"") == ()
def test_deserialize_enforces_required(self): cv = types.List() with pytest.raises(ValueError): cv.deserialize(b"")
def test_deserialize_creates_tuples(self): cv = types.List(optional=True) assert isinstance(cv.deserialize(b"foo,bar,baz"), tuple) assert isinstance(cv.deserialize(b""), tuple)
def test_deserialize_list_keys(): expected = collections.OrderedDict([(("a",), "1"), (("b", "c"), "2")]) type = ConfigMap(keys=types.List()) assert type.deserialize("a|1\n b, c|2") == expected
def test_deserialize_list_values(): expected = collections.OrderedDict([("a", ("1",)), ("b", ("2", "3"))]) type = ConfigMap(values=types.List()) assert type.deserialize("a|1\n b|2,3") == expected
def test_serialize_none(self): value = types.List() result = value.serialize(None) self.assertIsInstance(result, bytes) self.assertEqual(result, '')