from dvc.stage import Stage from dvc.output import _get, OUTS_MAP from tests.basic_env import TestDvc class TestOutScheme(TestDvc): MAP = OUTS_MAP TESTS = { "s3://bucket/path": "s3", "gs://bucket/path": "gs", "ssh://example.com:/dir/path": "ssh", "hdfs://example.com/dir/path": "hdfs", "path/to/file": "local", "path\\to\\file": "local", "file": "local", "./file": "local", ".\\file": "local", "../file": "local", "..\\file": "local", "unknown://path": "local", } def _get(self, path): return _get(Stage(self.dvc), path, None, None, None) def test(self): for path, cls in self.TESTS.items(): self.assertIsInstance(self._get(path), self.MAP[cls])