Example #1
0
    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"
Example #2
0
    def test_serialize_none(self):
        cv = types.List()

        result = cv.serialize(None)

        assert isinstance(result, str)
        assert result == ""
Example #3
0
    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)
Example #4
0
    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)
Example #5
0
    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")
Example #6
0
    def test_deserialize_does_not_double_encode_unicode(self):
        cv = types.List()

        result = cv.deserialize("æ, ø, å")
        assert result == ("æ", "ø", "å")

        result = cv.deserialize("æ\nø\nå")
        assert result == ("æ", "ø", "å")
Example #7
0
    def test_deserialize_decodes_utf8(self):
        cv = types.List()

        result = cv.deserialize("æ, ø, å".encode())
        assert result == ("æ", "ø", "å")

        result = cv.deserialize("æ\nø\nå".encode())
        assert result == ("æ", "ø", "å")
Example #8
0
    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'))
Example #9
0
 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')
Example #10
0
 def test_deserialize_respects_optional(self):
     value = types.List(optional=True)
     self.assertEqual(tuple(), value.deserialize(b''))
Example #11
0
 def test_deserialize_enforces_required(self):
     value = types.List()
     self.assertRaises(ValueError, value.deserialize, b'')
Example #12
0
 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)
Example #13
0
    def test_deserialize_respects_optional(self):
        cv = types.List(optional=True)

        assert cv.deserialize(b"") == ()
Example #14
0
    def test_deserialize_enforces_required(self):
        cv = types.List()

        with pytest.raises(ValueError):
            cv.deserialize(b"")
Example #15
0
    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
Example #18
0
 def test_serialize_none(self):
     value = types.List()
     result = value.serialize(None)
     self.assertIsInstance(result, bytes)
     self.assertEqual(result, '')