diff --git a/pkgs/development/python-modules/rfc6555/default.nix b/pkgs/development/python-modules/rfc6555/default.nix index 636427cf713..0bd7b0ca686 100644 --- a/pkgs/development/python-modules/rfc6555/default.nix +++ b/pkgs/development/python-modules/rfc6555/default.nix @@ -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"; diff --git a/pkgs/development/python-modules/rfc6555/disable_network_tests.patch b/pkgs/development/python-modules/rfc6555/disable_network_tests.patch new file mode 100644 index 00000000000..dc59111ac43 --- /dev/null +++ b/pkgs/development/python-modules/rfc6555/disable_network_tests.patch @@ -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() +