diff options
author | Sergey Shepelev <temotor@gmail.com> | 2017-12-04 23:25:32 +0300 |
---|---|---|
committer | Sergey Shepelev <temotor@gmail.com> | 2017-12-05 02:15:31 +0300 |
commit | 73d23bd1b86b24a97f9947f2db077ee431b8d85f (patch) | |
tree | dc76aea6a5de6cdf0388c64086da7f3f4a233205 | |
parent | d5008744da40942e1726e1fa5dda5180179f1a4f (diff) | |
download | eventlet-73d23bd1b86b24a97f9947f2db077ee431b8d85f.tar.gz |
Travis broke ipv6, allow failure; test against Python 2.7
-rw-r--r-- | .travis.yml | 17 | ||||
-rw-r--r-- | tests/__init__.py | 6 | ||||
-rw-r--r-- | tests/backdoor_test.py | 11 | ||||
-rw-r--r-- | tests/wsgi_test.py | 1 | ||||
-rw-r--r-- | tox.ini | 18 |
5 files changed, 40 insertions, 13 deletions
diff --git a/.travis.yml b/.travis.yml index 3b3417f..bf52468 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,10 +1,10 @@ -sudo: false +sudo: required language: python matrix: fast_finish: true include: - - {python: 3.5, env: TOXENV=pep8} + - {python: 3.6, env: TOXENV=pep8} - {python: 2.6, env: TOXENV=py26-epolls} - {python: 2.6, env: TOXENV=py26-poll} @@ -26,14 +26,21 @@ matrix: - {python: 3.5, env: TOXENV=py35-poll} - {python: 3.5, env: TOXENV=py35-selects} - - {python: 3.6-dev, env: TOXENV=py36-epolls} - - {python: 3.6-dev, env: TOXENV=py36-poll} - - {python: 3.6-dev, env: TOXENV=py36-selects} + - {python: 3.6, env: TOXENV=py36-epolls} + - {python: 3.6, env: TOXENV=py36-poll} + - {python: 3.6, env: TOXENV=py36-selects} + + - {python: 3.7-dev, env: TOXENV=py37-epolls} + - {python: 3.7-dev, env: TOXENV=py37-poll} + - {python: 3.7-dev, env: TOXENV=py37-selects} - {python: pypy, env: TOXENV=pypy-epolls} - {python: pypy, env: TOXENV=pypy-poll} - {python: pypy, env: TOXENV=pypy-selects} + + - {python: 3.6, env: TOXENV=ipv6} allow_failures: + - env: TOXENV=ipv6 - env: TOXENV=py26-epolls - env: TOXENV=py26-poll - env: TOXENV=py26-selects diff --git a/tests/__init__.py b/tests/__init__.py index 7ebb811..d2a2c7f 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -145,6 +145,12 @@ def skip_if_no_ssl(func): return skipped(func) +def skip_if_no_ipv6(func): + if os.environ.get('eventlet_test_ipv6') != '1': + return skipped(func) + return func + + class TestIsTakingTooLong(Exception): """ Custom exception class to be raised when a test's runtime exceeds a limit. """ pass diff --git a/tests/backdoor_test.py b/tests/backdoor_test.py index f932eb0..d99a4be 100644 --- a/tests/backdoor_test.py +++ b/tests/backdoor_test.py @@ -6,10 +6,10 @@ import eventlet from eventlet import backdoor from eventlet.green import socket -from tests import LimitedTestCase, main +import tests -class BackdoorTest(LimitedTestCase): +class BackdoorTest(tests.LimitedTestCase): def test_server(self): listener = socket.socket() listener.bind(('localhost', 0)) @@ -36,9 +36,10 @@ class BackdoorTest(LimitedTestCase): # wait for the console to discover that it's dead eventlet.sleep(0.1) + @tests.skip_if_no_ipv6 def test_server_on_ipv6_socket(self): listener = socket.socket(socket.AF_INET6) - listener.bind(('::1', 0)) + listener.bind(('::', 0)) listener.listen(5) serv = eventlet.spawn(backdoor.backdoor_server, listener) client = socket.socket(socket.AF_INET6) @@ -56,7 +57,3 @@ class BackdoorTest(LimitedTestCase): client = socket.socket(socket.AF_UNIX) client.connect(SOCKET_PATH) self._run_test_on_client_and_server(client, serv) - - -if __name__ == '__main__': - main() diff --git a/tests/wsgi_test.py b/tests/wsgi_test.py index 809335e..d9bc793 100644 --- a/tests/wsgi_test.py +++ b/tests/wsgi_test.py @@ -1402,6 +1402,7 @@ class TestHttpd(_TestBase): assert b'decoded: /a*b@@#3' in result.body assert b'raw: /a*b@%40%233' in result.body + @tests.skip_if_no_ipv6 def test_ipv6(self): try: sock = eventlet.listen(('::1', 0), family=socket.AF_INET6) @@ -16,7 +16,22 @@ statistics = 1 [tox] minversion=2.5 envlist = - pep8, py{26,27,33,34,35,36,py}-{selects,poll,epolls} + ipv6, pep8, py{26,27,33,34,35,36,37,py}-{selects,poll,epolls} + +[testenv:ipv6] +basepython = python +setenv = + {[testenv]setenv} + eventlet_test_ipv6 = 1 +deps = + coverage==4.3.1 + nose==1.3.7 + setuptools==32.3.1 +commands = + nosetests --verbose {env:tox_cover_args} \ + tests.backdoor_test:BackdoorTest.test_server_on_ipv6_socket \ + tests.wsgi_test:TestHttpd.test_ipv6 + coverage xml -i [testenv:pep8] basepython = python2.7 @@ -42,6 +57,7 @@ basepython = py34: python3.4 py35: python3.5 py36: python3.6 + py37: python3.7 pypy: pypy deps = coverage==4.3.1 |