from __future__ import with_statement import os from eventlet import greenio from tests import LimitedTestCase class TestGreenPipeWithStatement(LimitedTestCase): def test_pipe_context(self): # ensure using a pipe as a context actually closes it. r, w = os.pipe() r = greenio.GreenPipe(r) w = greenio.GreenPipe(w, 'w') with r: pass assert r.closed and not w.closed with w as f: assert f == w assert r.closed and w.closed