##// END OF EJS Templates
localrepo: handle ValueError during repository opening...
localrepo: handle ValueError during repository opening Python 3.8 can raise ValueError on attempt of an I/O operation against an illegal path. This was causing test-remotefilelog-gc.t to fail on Python 3.8. This commit teaches repository opening to handle ValueError and re-raise an Abort on failure. An arguably better solution would be to implement this logic in the vfs layer. But that seems like a bag of worms and I don't want to go down that rabbit hole. Until users report uncaught ValueError exceptions in the wild, I think it is fine to patch this at the only occurrence our test harness is finding it. Differential Revision: https://phab.mercurial-scm.org/D7944

File last commit:

r43346:2372284d default
r45469:9e5b4dbe default
Show More
test-hg-parseurl.py
50 lines | 1.6 KiB | text/x-python | PythonLexer
/ tests / test-hg-parseurl.py
Robert Stanca
py3: use print_function in test-hg-parseurl.py
r28746 from __future__ import absolute_import, print_function
Yuya Nishihara
test-hg-parseurl: stop direct symbol import of mercurial.hg.parseurl
r28806
Augie Fackler
tests: port test-hg-parseurl.py to unittest...
r37731 import unittest
Augie Fackler
formatting: blacken the codebase...
r43346 from mercurial import hg
Martijn Pieters
hg: allow hg.parseurl(url, None)...
r8174
Augie Fackler
tests: port test-hg-parseurl.py to unittest...
r37731 class ParseRequestTests(unittest.TestCase):
def testparse(self):
Martijn Pieters
hg: allow hg.parseurl(url, None)...
r8174
Augie Fackler
formatting: blacken the codebase...
r43346 self.assertEqual(
hg.parseurl(b'http://example.com/no/anchor'),
(b'http://example.com/no/anchor', (None, [])),
)
self.assertEqual(
hg.parseurl(b'http://example.com/an/anchor#foo'),
(b'http://example.com/an/anchor', (b'foo', [])),
)
Augie Fackler
tests: port test-hg-parseurl.py to unittest...
r37731 self.assertEqual(
Augie Fackler
tests: add b prefixes to test-hg-parseurl.py...
r37732 hg.parseurl(b'http://example.com/no/anchor/branches', [b'foo']),
Augie Fackler
formatting: blacken the codebase...
r43346 (b'http://example.com/no/anchor/branches', (None, [b'foo'])),
)
Augie Fackler
tests: port test-hg-parseurl.py to unittest...
r37731 self.assertEqual(
Augie Fackler
tests: add b prefixes to test-hg-parseurl.py...
r37732 hg.parseurl(b'http://example.com/an/anchor/branches#bar', [b'foo']),
Augie Fackler
formatting: blacken the codebase...
r43346 (b'http://example.com/an/anchor/branches', (b'bar', [b'foo'])),
)
self.assertEqual(
hg.parseurl(
b'http://example.com/an/anchor/branches-None#foo', None
),
(b'http://example.com/an/anchor/branches-None', (b'foo', [])),
)
self.assertEqual(
hg.parseurl(b'http://example.com/'),
(b'http://example.com/', (None, [])),
)
self.assertEqual(
hg.parseurl(b'http://example.com'),
(b'http://example.com/', (None, [])),
)
self.assertEqual(
hg.parseurl(b'http://example.com#foo'),
(b'http://example.com/', (b'foo', [])),
)
Augie Fackler
tests: port test-hg-parseurl.py to unittest...
r37731
if __name__ == '__main__':
import silenttestrunner
Augie Fackler
formatting: blacken the codebase...
r43346
Augie Fackler
tests: port test-hg-parseurl.py to unittest...
r37731 silenttestrunner.main(__name__)