Mercurial > hgsubversion
view tests/test_fetch_command_regexes.py @ 718:db0eb6237420
wrapper: fail properly with unsupported versions of Subvertpy (fixes #212)
Calling subvertpy.wc.api_version() will raise an AttributeError with
versions of Subvertpy prior to 0.7.4. This AttributeError completely
breaks hgsubversion, as our infrastructure assumes that only
ImportErrors are raised during imports.
Delaying the call to api_version() until after the Subvertpy version
check should make things work again.
author | Dan Villiom Podlaski Christiansen <danchr@gmail.com> |
---|---|
date | Sun, 03 Oct 2010 17:53:20 +0200 |
parents | 46e69be8e2c8 |
children | 1d07e86f5797 |
line wrap: on
line source
import unittest from hgsubversion import stupid two_empties = """Index: __init__.py =================================================================== Index: bar/__init__.py =================================================================== Index: bar/test_muhaha.py =================================================================== --- bar/test_muhaha.py (revision 0) +++ bar/test_muhaha.py (revision 1) @@ -0,0 +1,2 @@ + +blah blah blah, I'm a fake patch \ No newline at end of file """ binary_delta = """Index: trunk/functional_tests/doc_tests/test_doctest_fixtures/doctest_fixtures_fixtures.pyc =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: trunk/functional_tests/doc_tests/test_doctest_fixtures/doctest_fixtures_fixtures.pyc ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Index: trunk/functional_tests/doc_tests/test_doctest_fixtures/doctest_fixtures.rst =================================================================== """ special_delta = """Index: delta =================================================================== --- delta(revision 0) +++ delta(revision 9) @@ -0,0 +1 @@ +link alpha \ No newline at end of file Property changes on: delta ___________________________________________________________________ Name: svn:special + * """ class RegexTests(unittest.TestCase): def test_empty_file_re(self): matches = stupid.empty_file_patch_wont_make_re.findall(two_empties) assert sorted(matches) == ['__init__.py', 'bar/__init__.py'] def test_any_matches_just_one(self): pat = '''Index: trunk/django/contrib/admin/urls/__init__.py =================================================================== ''' matches = stupid.any_file_re.findall(pat) assert len(matches) == 1 def test_special_re(self): matches = stupid.property_special_set_re.findall(special_delta) assert len(matches) == 1 def test_any_file_re(self): matches = stupid.any_file_re.findall(two_empties) assert sorted(matches) == ['__init__.py', 'bar/__init__.py', 'bar/test_muhaha.py'] def test_binary_file_re(self): matches = stupid.binary_file_re.findall(binary_delta) assert matches == ['trunk/functional_tests/doc_tests/test_doctest_fixtures/doctest_fixtures_fixtures.pyc'] def suite(): return unittest.TestLoader().loadTestsFromTestCase(RegexTests)