X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/37eb070f55b5ae0c622fb4bf0a946c9dd49b2752..b3a65752c17598272235b67cccd3c9845327f525:/sdk/cwl/tests/test_util.py diff --git a/sdk/cwl/tests/test_util.py b/sdk/cwl/tests/test_util.py index 1209b88d8e..bf3d6fe0ef 100644 --- a/sdk/cwl/tests/test_util.py +++ b/sdk/cwl/tests/test_util.py @@ -11,6 +11,7 @@ import httplib2 from arvados_cwl.util import * from arvados.errors import ApiError +from arvados_cwl.util import common_prefix class MockDateTime(datetime.datetime): @classmethod @@ -53,4 +54,19 @@ class TestUtil(unittest.TestCase): logger = mock.MagicMock() current_container = get_current_container(api, num_retries=0, logger=logger) - self.assertEqual(current_container, None) \ No newline at end of file + self.assertEqual(current_container, None) + + def test_common_prefix(self): + self.assertEqual(common_prefix("file:///foo/bar", ["file:///foo/bar/baz"]), "file:///foo/") + self.assertEqual(common_prefix("file:///foo", ["file:///foo", "file:///foo/bar", "file:///foo/bar/"]), "file:///") + self.assertEqual(common_prefix("file:///foo/", ["file:///foo/", "file:///foo/bar", "file:///foo/bar/"]), "file:///foo/") + self.assertEqual(common_prefix("file:///foo/bar", ["file:///foo/bar", "file:///foo/baz", "file:///foo/quux/q2"]), "file:///foo/") + self.assertEqual(common_prefix("file:///foo/bar/", ["file:///foo/bar/", "file:///foo/baz", "file:///foo/quux/q2"]), "file:///foo/") + self.assertEqual(common_prefix("file:///foo/bar/splat", ["file:///foo/bar/splat", "file:///foo/baz", "file:///foo/quux/q2"]), "file:///foo/") + self.assertEqual(common_prefix("file:///foo/bar/splat", ["file:///foo/bar/splat", "file:///nope", "file:///foo/quux/q2"]), "file:///") + self.assertEqual(common_prefix("file:///blub/foo", ["file:///blub/foo", "file:///blub/foo/bar", "file:///blub/foo/bar/"]), "file:///blub/") + + # sanity check, the subsequent code strips off the prefix so + # just confirm the logic doesn't have a fencepost error + prefix = "file:///" + self.assertEqual("file:///foo/bar"[len(prefix):], "foo/bar")