X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/558574e31f56db08c82ca7c2b955e74df04242dd..a2c147e469bc4ccc0e788f2e72b2d94aa81ba368:/sdk/python/tests/test_collections.py diff --git a/sdk/python/tests/test_collections.py b/sdk/python/tests/test_collections.py index ac7dd1b9f6..ff0d6847ce 100644 --- a/sdk/python/tests/test_collections.py +++ b/sdk/python/tests/test_collections.py @@ -4,7 +4,6 @@ import arvados import copy -import hashlib import mock import os import pprint @@ -395,7 +394,7 @@ class ArvadosCollectionsTest(run_test_server.TestCaseWithServers, def test_write_directory_tree_with_zero_recursion(self): cwriter = arvados.CollectionWriter(self.api_client) content = 'd1/d2/f3d1/f2f1' - blockhash = hashlib.md5(content).hexdigest() + '+' + str(len(content)) + blockhash = tutil.str_keep_locator(content) cwriter.write_directory_tree( self.build_directory_tree(['f1', 'd1/f2', 'd1/d2/f3']), max_manifest_depth=0) @@ -739,7 +738,7 @@ class CollectionWriterTestCase(unittest.TestCase, CollectionTestMixin): self.assertEqual('.', writer.current_stream_name()) self.assertEqual('out', writer.current_file_name()) out_file.write('test data') - data_loc = hashlib.md5('test data').hexdigest() + '+9' + data_loc = tutil.str_keep_locator('test data') self.assertTrue(out_file.closed, "writer file not closed after context") self.assertRaises(ValueError, out_file.write, 'extra text') with self.mock_keep(data_loc, 200) as keep_mock: @@ -751,15 +750,15 @@ class CollectionWriterTestCase(unittest.TestCase, CollectionTestMixin): writer = arvados.CollectionWriter(client) with writer.open('six') as out_file: out_file.writelines(['12', '34', '56']) - data_loc = hashlib.md5('123456').hexdigest() + '+6' + data_loc = tutil.str_keep_locator('123456') with self.mock_keep(data_loc, 200) as keep_mock: self.assertEqual(". {} 0:6:six\n".format(data_loc), writer.manifest_text()) def test_open_flush(self): client = self.api_client_mock() - data_loc1 = hashlib.md5('flush1').hexdigest() + '+6' - data_loc2 = hashlib.md5('flush2').hexdigest() + '+6' + data_loc1 = tutil.str_keep_locator('flush1') + data_loc2 = tutil.str_keep_locator('flush2') with self.mock_keep((data_loc1, 200), (data_loc2, 200)) as keep_mock: writer = arvados.CollectionWriter(client) with writer.open('flush_test') as out_file: @@ -777,15 +776,15 @@ class CollectionWriterTestCase(unittest.TestCase, CollectionTestMixin): out_file.write('1st') with writer.open('.', '2') as out_file: out_file.write('2nd') - data_loc = hashlib.md5('1st2nd').hexdigest() + '+6' + data_loc = tutil.str_keep_locator('1st2nd') with self.mock_keep(data_loc, 200) as keep_mock: self.assertEqual(". {} 0:3:1 3:3:2\n".format(data_loc), writer.manifest_text()) def test_two_opens_two_streams(self): client = self.api_client_mock() - data_loc1 = hashlib.md5('file').hexdigest() + '+4' - data_loc2 = hashlib.md5('indir').hexdigest() + '+5' + data_loc1 = tutil.str_keep_locator('file') + data_loc2 = tutil.str_keep_locator('indir') with self.mock_keep((data_loc1, 200), (data_loc2, 200)) as keep_mock: writer = arvados.CollectionWriter(client) with writer.open('file') as out_file: @@ -923,9 +922,9 @@ class NewCollectionTestCase(unittest.TestCase, CollectionTestMixin): c1 = Collection('. 781e5e245d69b566979b86e28d23f2c7+10 0:10:count1.txt\n') c2 = Collection('. 781e5e245d69b566979b86e28d23f2c7+10 0:10:count1.txt\n') d = c2.diff(c1) - self.assertEqual(d, []) + self.assertEqual(d, [('tok', './count1.txt', c2["count1.txt"], c1["count1.txt"])]) d = c1.diff(c2) - self.assertEqual(d, []) + self.assertEqual(d, [('tok', './count1.txt', c2["count1.txt"], c1["count1.txt"])]) self.assertEqual(c1.portable_manifest_text(), c2.portable_manifest_text()) c1.apply(d) @@ -947,9 +946,11 @@ class NewCollectionTestCase(unittest.TestCase, CollectionTestMixin): c1 = Collection('. 781e5e245d69b566979b86e28d23f2c7+10 0:10:count1.txt\n') c2 = Collection('. 781e5e245d69b566979b86e28d23f2c7+10 5348b82a029fd9e971a811ce1f71360b+43 0:10:count1.txt 10:20:count2.txt\n') d = c2.diff(c1) - self.assertEqual(d, [('del', './count2.txt', c2["count2.txt"])]) + self.assertEqual(d, [('del', './count2.txt', c2["count2.txt"]), + ('tok', './count1.txt', c2["count1.txt"], c1["count1.txt"])]) d = c1.diff(c2) - self.assertEqual(d, [('add', './count2.txt', c2["count2.txt"])]) + self.assertEqual(d, [('add', './count2.txt', c2["count2.txt"]), + ('tok', './count1.txt', c2["count1.txt"], c1["count1.txt"])]) self.assertNotEqual(c1.portable_manifest_text(), c2.portable_manifest_text()) c1.apply(d) @@ -959,9 +960,11 @@ class NewCollectionTestCase(unittest.TestCase, CollectionTestMixin): c1 = Collection('. 781e5e245d69b566979b86e28d23f2c7+10 0:10:count1.txt\n') c2 = Collection('. 781e5e245d69b566979b86e28d23f2c7+10 0:10:count1.txt\n./foo 5348b82a029fd9e971a811ce1f71360b+43 0:10:count2.txt\n') d = c2.diff(c1) - self.assertEqual(d, [('del', './foo', c2["foo"])]) + self.assertEqual(d, [('del', './foo', c2["foo"]), + ('tok', './count1.txt', c2["count1.txt"], c1["count1.txt"])]) d = c1.diff(c2) - self.assertEqual(d, [('add', './foo', c2["foo"])]) + self.assertEqual(d, [('add', './foo', c2["foo"]), + ('tok', './count1.txt', c2["count1.txt"], c1["count1.txt"])]) self.assertNotEqual(c1.portable_manifest_text(), c2.portable_manifest_text()) c1.apply(d) @@ -973,10 +976,12 @@ class NewCollectionTestCase(unittest.TestCase, CollectionTestMixin): d = c2.diff(c1) self.assertEqual(d, [('del', './foo/count3.txt', c2.find("foo/count3.txt")), - ('add', './foo/count2.txt', c1.find("foo/count2.txt"))]) + ('add', './foo/count2.txt', c1.find("foo/count2.txt")), + ('tok', './count1.txt', c2["count1.txt"], c1["count1.txt"])]) d = c1.diff(c2) self.assertEqual(d, [('del', './foo/count2.txt', c1.find("foo/count2.txt")), - ('add', './foo/count3.txt', c2.find("foo/count3.txt"))]) + ('add', './foo/count3.txt', c2.find("foo/count3.txt")), + ('tok', './count1.txt', c2["count1.txt"], c1["count1.txt"])]) self.assertNotEqual(c1.portable_manifest_text(), c2.portable_manifest_text()) c1.apply(d) @@ -986,9 +991,11 @@ class NewCollectionTestCase(unittest.TestCase, CollectionTestMixin): c1 = Collection('. 781e5e245d69b566979b86e28d23f2c7+10 0:10:count1.txt\n./foo 5348b82a029fd9e971a811ce1f71360b+43 0:10:count2.txt\n') c2 = Collection('. 781e5e245d69b566979b86e28d23f2c7+10 0:10:count1.txt 0:3:foo\n') d = c2.diff(c1) - self.assertEqual(d, [('mod', './foo', c2["foo"], c1["foo"])]) + self.assertEqual(d, [('mod', './foo', c2["foo"], c1["foo"]), + ('tok', './count1.txt', c2["count1.txt"], c1["count1.txt"])]) d = c1.diff(c2) - self.assertEqual(d, [('mod', './foo', c1["foo"], c2["foo"])]) + self.assertEqual(d, [('mod', './foo', c1["foo"], c2["foo"]), + ('tok', './count1.txt', c2["count1.txt"], c1["count1.txt"])]) self.assertNotEqual(c1.portable_manifest_text(), c2.portable_manifest_text()) c1.apply(d)