X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/949d940b5f75114f86d381c347f0ba8f26b3e9b9..7bbb0940b0398d17bb85fe410c3f23e4cd6ec8d6:/sdk/python/tests/test_collections.py diff --git a/sdk/python/tests/test_collections.py b/sdk/python/tests/test_collections.py index 3a4dabfeae..66f062c167 100644 --- a/sdk/python/tests/test_collections.py +++ b/sdk/python/tests/test_collections.py @@ -958,6 +958,20 @@ class NewCollectionTestCase(unittest.TestCase, CollectionTestMixin): c = Collection(manifest) self.assertEqual(c.portable_manifest_text(), manifest) + def test_other_special_chars_on_file_token(self): + cases = [ + ('\\000', '\0'), + ('\\011', '\t'), + ('\\012', '\n'), + ('\\072', ':'), + ('\\134400', '\\400'), + ] + for encoded, decoded in cases: + manifest = '. d41d8cd98f00b204e9800998ecf8427e+0 0:0:some%sfile.txt\n' % encoded + c = Collection(manifest) + self.assertEqual(c.portable_manifest_text(), manifest) + self.assertIn('some%sfile.txt' % decoded, c.keys()) + def test_escaped_paths_do_get_unescaped_on_listing(self): # Dir & file names are literally '\056' (escaped form: \134056) manifest = './\\134056\\040Test d41d8cd98f00b204e9800998ecf8427e+0 0:0:\\134056\n'