=== modified file 'dulwich/tests/compat/test_client.py' Index: dulwich/dulwich/tests/compat/test_client.py =================================================================== --- dulwich.orig/dulwich/tests/compat/test_client.py +++ dulwich/dulwich/tests/compat/test_client.py @@ -544,6 +544,8 @@ class DulwichHttpClientTest(CompatTestCa min_git_version = (1, 7, 0, 2) def setUp(self): + if '__pypy__' in sys.modules: + self.skipTest('urllib3 not available for pypy in debian') CompatTestCase.setUp(self) DulwichClientTestBase.setUp(self) self._httpd = HTTPGitServer(("localhost", 0), self.gitroot) Index: dulwich/dulwich/tests/test_client.py =================================================================== --- dulwich.orig/dulwich/tests/test_client.py +++ dulwich/dulwich/tests/test_client.py @@ -35,7 +35,8 @@ try: except ImportError: import urllib.parse as urlparse -import urllib3 +if '__pypy__' not in sys.modules: + import urllib3 import dulwich from dulwich import ( @@ -551,12 +552,20 @@ class TestGetTransportAndPath(TestCase): self.assertTrue(isinstance(c, SSHGitClient)) def test_http(self): + if '__pypy__' in sys.modules: + self.skipTest('urllib3 not available for pypy in debian') + + url = 'https://github.com/jelmer/dulwich' c, path = get_transport_and_path(url) self.assertTrue(isinstance(c, HttpGitClient)) self.assertEqual('/jelmer/dulwich', path) def test_http_auth(self): + if '__pypy__' in sys.modules: + self.skipTest('urllib3 not available for pypy in debian') + + url = 'https://user:passwd@github.com/jelmer/dulwich' c, path = get_transport_and_path(url) @@ -567,6 +576,9 @@ class TestGetTransportAndPath(TestCase): self.assertEqual('passwd', c._password) def test_http_auth_with_username(self): + if '__pypy__' in sys.modules: + self.skipTest('urllib3 not available for pypy in debian') + url = 'https://github.com/jelmer/dulwich' c, path = get_transport_and_path( @@ -578,6 +590,9 @@ class TestGetTransportAndPath(TestCase): self.assertEqual('blah', c._password) def test_http_auth_with_username_and_in_url(self): + if '__pypy__' in sys.modules: + self.skipTest('urllib3 not available for pypy in debian') + url = 'https://user:passwd@github.com/jelmer/dulwich' c, path = get_transport_and_path( @@ -589,6 +604,10 @@ class TestGetTransportAndPath(TestCase): self.assertEqual('passwd', c._password) def test_http_no_auth(self): + if '__pypy__' in sys.modules: + self.skipTest('urllib3 not available for pypy in debian') + + url = 'https://github.com/jelmer/dulwich' c, path = get_transport_and_path(url) @@ -671,6 +690,9 @@ class TestGetTransportAndPathFromUrl(Tes 'prospero://bar/baz') def test_http(self): + if '__pypy__' in sys.modules: + self.skipTest('urllib3 not available for pypy in debian') + url = 'https://github.com/jelmer/dulwich' c, path = get_transport_and_path_from_url(url) self.assertTrue(isinstance(c, HttpGitClient)) @@ -678,6 +700,9 @@ class TestGetTransportAndPathFromUrl(Tes self.assertEqual('/jelmer/dulwich', path) def test_http_port(self): + if '__pypy__' in sys.modules: + self.skipTest('urllib3 not available for pypy in debian') + url = 'https://github.com:9090/jelmer/dulwich' c, path = get_transport_and_path_from_url(url) self.assertEqual('https://github.com:9090', c.get_url(b'/')) @@ -910,6 +935,11 @@ class LocalGitClientTests(TestCase): class HttpGitClientTests(TestCase): + def setUp(self): + super(HttpGitClientTests, self).setUp() + if '__pypy__' in sys.modules: + self.skipTest('urllib3 not available for pypy in debian') + @staticmethod def b64encode(s): """Python 2/3 compatible Base64 encoder. Returns string.""" @@ -1088,12 +1118,18 @@ class TCPGitClientTests(TestCase): class DefaultUrllib3ManagerTest(TestCase): + def setUp(self): + super(DefaultUrllib3ManagerTest, self).setUp() + if '__pypy__' in sys.modules: + self.skipTest('urllib3 not available for pypy in debian') + def test_no_config(self): manager = default_urllib3_manager(config=None) self.assertEqual(manager.connection_pool_kw['cert_reqs'], 'CERT_REQUIRED') def test_config_no_proxy(self): + manager = default_urllib3_manager(config=ConfigDict()) self.assertNotIsInstance(manager, urllib3.ProxyManager)