diff options
Diffstat (limited to 'morphlib/repoaliasresolver_tests.py')
-rw-r--r-- | morphlib/repoaliasresolver_tests.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/morphlib/repoaliasresolver_tests.py b/morphlib/repoaliasresolver_tests.py index 04b9e695..21724a35 100644 --- a/morphlib/repoaliasresolver_tests.py +++ b/morphlib/repoaliasresolver_tests.py @@ -88,3 +88,42 @@ class RepoAliasResolverTests(unittest.TestCase): ]) self.assertEqual(resolver.pull_url('malformed:foo'), 'malformed:foo') self.assertEqual(resolver.push_url('malformed:foo'), 'malformed:foo') + + def test_gets_aliases_from_interpolated_patterns(self): + self.assertEqual( + self.resolver.aliases_from_url('git://gitorious.org/baserock/foo'), + ['baserock:foo']) + self.assertEqual( + self.resolver.aliases_from_url( + 'git@gitorious.org:baserock/foo.git'), + ['baserock:foo']) + self.assertEqual( + self.resolver.aliases_from_url( + 'git://gitorious.org/baserock-morphs/bar'), + ['upstream:bar']) + self.assertEqual( + self.resolver.aliases_from_url( + 'git@gitorious.org:baserock-morphs/bar.git'), + ['upstream:bar']) + + def test_gets_aliases_from_append_pattern(self): + self.assertEqual( + ['append:foo'], self.resolver.aliases_from_url('git://append/foo')) + self.assertEqual( + ['append:foo'], self.resolver.aliases_from_url('git@append/foo')) + + self.assertEqual( + ['append:bar'], self.resolver.aliases_from_url('git://append/bar')) + self.assertEqual( + ['append:bar'], self.resolver.aliases_from_url('git@append/bar')) + + def test_handles_multiple_possible_aliases(self): + resolver = morphlib.repoaliasresolver.RepoAliasResolver([ + 'trove=git://git.baserock.org/#ssh://git@git.baserock.org/', + 'baserock=git://git.baserock.org/baserock/' + '#ssh://git@git.baserock.org/baserock/', + ]) + self.assertEqual( + ['baserock:baserock/morphs', 'trove:baserock/baserock/morphs'], + resolver.aliases_from_url( + 'git://git.baserock.org/baserock/baserock/morphs')) |