diff options
author | Ian Ward <ian@excess.org> | 2013-12-26 14:25:20 -0500 |
---|---|---|
committer | Ian Ward <ian@excess.org> | 2013-12-26 14:25:20 -0500 |
commit | cf35019a2a36f17d8b07a5674df7ae9658c3f0bf (patch) | |
tree | 93f6f729de7702b160c924eb50533512fa3033a8 | |
parent | 811460583d57ebac4058471b429e8fabeeb3566e (diff) | |
download | urwid-cf35019a2a36f17d8b07a5674df7ae9658c3f0bf.tar.gz |
no glib for pypy, no twisted for python3
-rw-r--r-- | urwid/tests/test_event_loops.py | 71 |
1 files changed, 38 insertions, 33 deletions
diff --git a/urwid/tests/test_event_loops.py b/urwid/tests/test_event_loops.py index 4f21f5d..4aec8cb 100644 --- a/urwid/tests/test_event_loops.py +++ b/urwid/tests/test_event_loops.py @@ -3,6 +3,8 @@ import unittest import platform import urwid +from urwid.compat import PYTHON3 + class EventLoopTestMixin(object): def test_event_loop(self): @@ -67,39 +69,42 @@ class SelectEventLoopTest(unittest.TestCase, EventLoopTestMixin): self.evl = urwid.SelectEventLoop() -class GLibEventLoopTest(unittest.TestCase, EventLoopTestMixin): - def setUp(self): - self.evl = urwid.GLibEventLoop() +# no pygobject for pypy yet +if platform.python_implementation() != "PyPy": + class GLibEventLoopTest(unittest.TestCase, EventLoopTestMixin): + def setUp(self): + self.evl = urwid.GLibEventLoop() +# no twisted on python3 yet +if not PYTHON3: + class TwistedEventLoopTest(unittest.TestCase, EventLoopTestMixin): + def setUp(self): + self.evl = urwid.TwistedEventLoop() -class TwistedEventLoopTest(unittest.TestCase, EventLoopTestMixin): - def setUp(self): - self.evl = urwid.TwistedEventLoop() + # can't restart twisted reactor, so use shortened tests + def test_event_loop(self): + pass - # can't restart twisted reactor, so use shortened tests - def test_event_loop(self): - pass - - def test_run(self): - evl = self.evl - out = [] - rd, wr = os.pipe() - self.assertEqual(os.write(wr, "data".encode('ascii')), 4) - def step2(): - out.append(os.read(rd, 2).decode('ascii')) - def say_hello(): - out.append("hello") - def say_waiting(): - out.append("waiting") - def exit_clean(): - out.append("clean exit") - raise urwid.ExitMainLoop - def exit_error(): - 1/0 - handle = evl.watch_file(rd, step2) - handle = evl.alarm(0.01, exit_clean) - handle = evl.alarm(0.005, say_hello) - self.assertEqual(evl.enter_idle(say_waiting), 1) - evl.run() - self.assertEqual(out, ["da", "ta", "waiting", "hello", "waiting", - "clean exit"]) + def test_run(self): + evl = self.evl + out = [] + rd, wr = os.pipe() + self.assertEqual(os.write(wr, "data".encode('ascii')), 4) + def step2(): + out.append(os.read(rd, 2).decode('ascii')) + def say_hello(): + out.append("hello") + def say_waiting(): + out.append("waiting") + def exit_clean(): + out.append("clean exit") + raise urwid.ExitMainLoop + def exit_error(): + 1/0 + handle = evl.watch_file(rd, step2) + handle = evl.alarm(0.01, exit_clean) + handle = evl.alarm(0.005, say_hello) + self.assertEqual(evl.enter_idle(say_waiting), 1) + evl.run() + self.assertEqual(out, ["da", "ta", "waiting", "hello", "waiting", + "clean exit"]) |