def setUp(self):
     self.fired1 = []
     self.fired2 = []
     self.disp = Dispatcher()
Beispiel #2
0
 def setUp(self):
     self.fired1 = []
     self.fired2 = []
     self.disp = Dispatcher()
class DispatcherTestCase(unittest.TestCase):
    def setUp(self):
        self.fired1 = []
        self.fired2 = []
        self.disp = Dispatcher()

    def _callback1(self, *args, **kwargs):
        self.fired1.append((args, kwargs))

    def _callback2(self, *args, **kwargs):
        self.fired2.append((args, kwargs))

    def _crash(self):
        raise RuntimeError('ignore this error')

    def test_fire_no_listeners(self):
        assert self.disp.listening('eek') == 0
        self.disp.dispatch('eek')

    def test_single_fire(self):
        self.disp.listen('eek', self._callback1)
        assert self.disp.listening('eek') == 1
        self.disp.dispatch('eek', 1, a=2)
        assert self.fired1 == [((1,), {'a': 2})]

    def test_multiple_fire(self):
        self.disp.listen('eek', self._callback1)
        self.disp.listen('eek', self._callback2)
        assert self.disp.listening('eek') == 2
        self.disp.dispatch('eek', 1, a=2)
        assert self.fired1 == [((1,), {'a': 2})]
        assert self.fired2 == [((1,), {'a': 2})]

    def test_crash(self):
        self.disp.listen('eek', self._crash)
        self.disp.dispatch('eek')

    def test_ignore_dups(self):
        self.disp.listen('eek', self._callback1)
        self.disp.listen('eek', self._callback1)
        assert self.disp.listening('eek') == 1
        self.disp.dispatch('eek')
        assert self.fired1 == [((), {})]

    def test_unlisten(self):
        self.disp.listen('eek', self._callback1)
        self.disp.unlisten('eek', self._callback1)
        assert self.disp.listening('eek') == 0
        self.disp.dispatch('eek', 1, a=2)
        assert self.fired1 == []
Beispiel #4
0
class DispatcherTestCase(unittest.TestCase):
    def setUp(self):
        self.fired1 = []
        self.fired2 = []
        self.disp = Dispatcher()

    def _callback1(self, *args, **kwargs):
        self.fired1.append((args, kwargs))

    def _callback2(self, *args, **kwargs):
        self.fired2.append((args, kwargs))

    def _crash(self):
        raise RuntimeError('ignore this error')

    def test_fire_no_listeners(self):
        assert self.disp.listening('eek') == 0
        self.disp.dispatch('eek')

    def test_single_fire(self):
        self.disp.listen('eek', self._callback1)
        assert self.disp.listening('eek') == 1
        self.disp.dispatch('eek', 1, a=2)
        assert self.fired1 == [((1,), {'a': 2})]

    def test_multiple_fire(self):
        self.disp.listen('eek', self._callback1)
        self.disp.listen('eek', self._callback2)
        assert self.disp.listening('eek') == 2
        self.disp.dispatch('eek', 1, a=2)
        assert self.fired1 == [((1,), {'a': 2})]
        assert self.fired2 == [((1,), {'a': 2})]

    def test_crash(self):
        self.disp.listen('eek', self._crash)
        self.disp.dispatch('eek')

    def test_ignore_dups(self):
        self.disp.listen('eek', self._callback1)
        self.disp.listen('eek', self._callback1)
        assert self.disp.listening('eek') == 1
        self.disp.dispatch('eek')
        assert self.fired1 == [((), {})]

    def test_unlisten(self):
        self.disp.listen('eek', self._callback1)
        self.disp.unlisten('eek', self._callback1)
        assert self.disp.listening('eek') == 0
        self.disp.dispatch('eek', 1, a=2)
        assert self.fired1 == []