rfc6555: selectively disable networked tests

(incl. tiny nitpicks from vcunat)
This commit is contained in:
Dima 2019-09-07 22:12:11 +02:00 committed by Vladimír Čunát
parent 4f2a3aabff
commit b199e30680
No known key found for this signature in database
GPG Key ID: E747DF1F9575A3AA
2 changed files with 38 additions and 3 deletions

View File

@ -11,9 +11,13 @@ buildPythonPackage rec {
propagatedBuildInputs = with pythonPackages; [ selectors2 ];
# tests are disabled as rfc6555's 'non-network' tests still require a
# functional DNS stack to pass.
doCheck = false;
checkInputs = with pythonPackages; [ mock pytest ];
# disabling tests that require a functional DNS IPv{4,6} stack to pass.
patches = [ ./disable_network_tests.patch ];
# default doCheck = true; is not enough, apparently
postCheck = ''
py.test tests/
'';
meta = {
description = "Python implementation of the Happy Eyeballs Algorithm";

View File

@ -0,0 +1,31 @@
diff --git a/tests/test_create_connection.py b/tests/test_create_connection.py
index fe38026..cdb26b4 100644
--- a/tests/test_create_connection.py
+++ b/tests/test_create_connection.py
@@ -6,10 +6,12 @@ from .test_utils import requires_network
class _BasicCreateConnectionTests(object):
+
@requires_network
def test_create_connection_google(self):
sock = rfc6555.create_connection(('www.google.com', 80))
+ @requires_network
@pytest.mark.parametrize('timeout', [None, 5.0])
def test_create_connection_has_proper_timeout(self, timeout):
sock = rfc6555.create_connection(('www.google.com', 80), timeout=timeout)
diff --git a/tests/test_ipv6.py b/tests/test_ipv6.py
index 3ee8564..f0db28e 100644
--- a/tests/test_ipv6.py
+++ b/tests/test_ipv6.py
@@ -2,7 +2,9 @@ import socket
import mock
import rfc6555
+from .test_utils import requires_network
+@requires_network
def test_ipv6_available():
assert rfc6555._detect_ipv6()