diff options
| author | Jakub Stasiak <jakub@stasiak.at> | 2014-10-16 00:01:29 +0100 |
|---|---|---|
| committer | Jakub Stasiak <jakub@stasiak.at> | 2014-10-16 23:02:01 +0100 |
| commit | 325b5afd1f073bbd652332cc05f54125b5c8992c (patch) | |
| tree | 8cd603cf509564f7befbe530606e956fac5e451a /tests/greenio_test.py | |
| parent | 0b8f44f244c5b89ebeca3ec57af729cc2a766398 (diff) | |
| download | eventlet-325b5afd1f073bbd652332cc05f54125b5c8992c.tar.gz | |
Fix "maximum recursion depth exceeded in GreenSocket.__del__"
Closes #137
Closes #148
Diffstat (limited to 'tests/greenio_test.py')
| -rw-r--r-- | tests/greenio_test.py | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/tests/greenio_test.py b/tests/greenio_test.py index ba3a826..8993e85 100644 --- a/tests/greenio_test.py +++ b/tests/greenio_test.py @@ -9,10 +9,12 @@ import socket as _orig_sock import sys import tempfile +from nose.tools import eq_ + from eventlet import event, greenio, debug from eventlet.hubs import get_hub from eventlet.green import select, socket, time, ssl -from eventlet.support import get_errno, six +from eventlet.support import capture_stderr, get_errno, six from tests import ( LimitedTestCase, main, skip_with_pyevent, skipped, skip_if, skip_on_windows, @@ -895,5 +897,21 @@ def test_set_nonblocking(): assert new_flags == (orig_flags | os.O_NONBLOCK) +def test_socket_del_fails_gracefully_when_not_fully_initialized(): + # Regression introduced in da87716714689894f23d0db7b003f26d97031e83, reported in: + # * GH #137 https://github.com/eventlet/eventlet/issues/137 + # * https://bugs.launchpad.net/oslo.messaging/+bug/1369999 + + class SocketSubclass(socket.socket): + + def __init__(self): + pass + + with capture_stderr() as err: + SocketSubclass() + + assert err.getvalue() == '' + + if __name__ == '__main__': main() |
