##// END OF EJS Templates
schemes: add debugexpandscheme command, resolving a scheme to canonical form
Jason R. Coombs -
r27982:bf1d5c22 default
parent child Browse files
Show More
@@ -41,9 +41,11 b' same name.'
41 41 """
42 42
43 43 import os, re
44 from mercurial import extensions, hg, templater, util, error
44 from mercurial import extensions, hg, templater, util, error, cmdutil
45 45 from mercurial.i18n import _
46 46
47 cmdtable = {}
48 command = cmdutil.command(cmdtable)
47 49 # Note for extension authors: ONLY specify testedwith = 'internal' for
48 50 # extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
49 51 # be specifying the version(s) of Mercurial they are tested with, or
@@ -109,3 +111,12 b' def extsetup(ui):'
109 111 hg.schemes[scheme] = ShortRepository(url, scheme, t)
110 112
111 113 extensions.wrapfunction(util, 'hasdriveletter', hasdriveletter)
114
115 @command('debugexpandscheme', norepo=True)
116 def expandscheme(ui, url, **opts):
117 """given a repo path, provide the scheme-expanded path
118 """
119 repo = hg._peerlookup(url)
120 if isinstance(repo, ShortRepository):
121 url = repo.resolve(url)
122 ui.write(url + '\n')
@@ -52,6 +52,21 b' check that paths are expanded'
52 52 no changes found
53 53 [1]
54 54
55 check that debugexpandscheme outputs the canonical form
56
57 $ hg debugexpandscheme bb://user/repo
58 https://bitbucket.org/user/repo
59
60 expanding an unknown scheme emits the input
61
62 $ hg debugexpandscheme foobar://this/that
63 foobar://this/that
64
65 expanding a canonical URL emits the input
66
67 $ hg debugexpandscheme https://bitbucket.org/user/repo
68 https://bitbucket.org/user/repo
69
55 70 errors
56 71
57 72 $ cat errors.log
General Comments 0
You need to be logged in to leave comments. Login now