def test_configured_subscribers__callback(self): callback1 = Mock(name='callback1') callback1.return_value = ['http://a.com/1', 'http://a.com/2'] callback2 = Mock(name='callback2') callback2.return_value = iter(['http://b.com/1', 'http://b.com/2']) self._app.settings.THORN_SUBSCRIBERS = { 'foo.bar': [callback1, callback2], } self._app.Subscriber.from_dict = subscriber_from_dict self.assertListEqual( [dict(event='foo.bar', url='http://a.com/1'), dict(event='foo.bar', url='http://a.com/2'), dict(event='foo.bar', url='http://b.com/1'), dict(event='foo.bar', url='http://b.com/2')], self.dispatcher._configured_subscribers('foo.bar') )
def test_subscribers_for_event(self): source1, source2 = Mock(name='source1'), Mock(name='source2') source1.return_value = [1, 2, 3] source2.return_value = [4, 5, 6] self.dispatcher.subscriber_sources = [source1, source2] self.assertListEqual( list(self.dispatcher.subscribers_for_event('foo.bar')), [1, 2, 3, 4, 5, 6], )