select: Python 2.x required __nonzero__ for bool(Select)
This commit is contained in:
parent
d030decf57
commit
6fafc0a631
|
@ -135,6 +135,8 @@ class Select(object):
|
|||
"""
|
||||
return bool(self._receivers)
|
||||
|
||||
__nonzero__ = __bool__
|
||||
|
||||
def __enter__(self):
|
||||
return self
|
||||
|
||||
|
|
|
@ -6,6 +6,22 @@ import mitogen.select
|
|||
import testlib
|
||||
|
||||
|
||||
class BoolTest(testlib.RouterMixin, testlib.TestCase):
|
||||
klass = mitogen.select.Select
|
||||
|
||||
def test_receiver(self):
|
||||
recv = mitogen.core.Receiver(self.router) # oneshot
|
||||
select = self.klass()
|
||||
self.assertFalse(select)
|
||||
select.add(recv)
|
||||
self.assertTrue(select)
|
||||
|
||||
recv._on_receive(mitogen.core.Message.pickled('123'))
|
||||
self.assertTrue(select)
|
||||
self.assertEquals('123', select.get().unpickle())
|
||||
self.assertFalse(select)
|
||||
|
||||
|
||||
class AddTest(testlib.RouterMixin, testlib.TestCase):
|
||||
klass = mitogen.select.Select
|
||||
|
||||
|
|
Loading…
Reference in New Issue