config: String escape strings

This commit is contained in:
Thomas Adamcik 2013-04-03 01:00:34 +02:00
parent 6f509d3a04
commit 73fb143f45
2 changed files with 5 additions and 1 deletions

View File

@ -104,7 +104,7 @@ class String(ConfigValue):
return value
def serialize(self, value):
return value.encode('utf-8')
return value.encode('utf-8').encode('string-escape')
class Integer(ConfigValue):

View File

@ -128,6 +128,10 @@ class StringTest(unittest.TestCase):
self.assertIsNone(value.deserialize(''))
self.assertIsNone(value.deserialize(' '))
def test_serialize_string_escapes(self):
value = config.String()
self.assertEqual(r'\r\n\t', value.serialize('\r\n\t'))
def test_format_masks_secrets(self):
value = config.String(secret=True)
self.assertEqual('********', value.format('s3cret'))