Mercurial > hg
changeset 24908:30b910fea244
windows: add doctest for shellquote()
This is actual test coverage for issue4629. The test changes in eea3977e6fca
were simply the addition of quotes to the output, not ensuring that strings with
backslashes are quoted.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Fri, 01 May 2015 20:17:00 -0400 |
parents | 9570587b6986 |
children | d71492ca2fdd |
files | mercurial/windows.py |
diffstat | 1 files changed, 12 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/windows.py Sat Apr 25 21:42:07 2015 +0900 +++ b/mercurial/windows.py Fri May 01 20:17:00 2015 -0400 @@ -162,6 +162,18 @@ _quotere = None _needsshellquote = None def shellquote(s): + r""" + >>> shellquote(r'C:\Users\xyz') + '"C:\\Users\\xyz"' + >>> shellquote(r'C:\Users\xyz/mixed') + '"C:\\Users\\xyz/mixed"' + >>> # Would be safe not to quote too, since it is all double backslashes + >>> shellquote(r'C:\\Users\\xyz') + '"C:\\\\Users\\\\xyz"' + >>> # But this must be quoted + >>> shellquote(r'C:\\Users\\xyz/abc') + '"C:\\\\Users\\\\xyz/abc"' + """ global _quotere if _quotere is None: _quotere = re.compile(r'(\\*)("|\\$)')