Пример #1
0
 def test_setup_sync(self):
     """
     ApplicationHelper.setup() should return ``None``, not a Deferred.
     """
     msg_helper = ApplicationHelper(None)
     self.add_cleanup(msg_helper.cleanup)
     self.assertEqual(msg_helper.setup(), None)
Пример #2
0
    def get_worker(self, config=None):
        '''Get a new MessageForwardingWorker with the provided config'''
        if config is None:
            config = {}

        self.app_helper = ApplicationHelper(MessageForwardingWorker)
        yield self.app_helper.setup()
        self.addCleanup(self.app_helper.cleanup)

        persistencehelper = PersistenceHelper()
        yield persistencehelper.setup()
        self.addCleanup(persistencehelper.cleanup)

        config = conjoin(
            persistencehelper.mk_config({
                'transport_name':
                'testtransport',
                'mo_message_url':
                self.url.decode('utf-8'),
                'inbound_ttl':
                60,
                'outbound_ttl':
                60 * 60 * 24 * 2,
                'metric_window':
                1.0,
            }), config)

        worker = yield self.app_helper.get_application(config)
        returnValue(worker)
Пример #3
0
 def test_get_application_different_class(self):
     """
     .get_application() should return an instance of the specified worker
     class if one is provided.
     """
     app_helper = self.add_helper(ApplicationHelper(ApplicationWorker))
     app = yield app_helper.get_application({}, cls=RunningCheckApplication)
     self.assertIsInstance(app, RunningCheckApplication)
Пример #4
0
 def test_get_application_defaults(self):
     """
     .get_application() should return a started application worker.
     """
     app_helper = self.add_helper(
         ApplicationHelper(RunningCheckApplication))
     app = yield app_helper.get_application({})
     self.assertIsInstance(app, RunningCheckApplication)
     self.assertEqual(app.app_worker_running, True)
Пример #5
0
 def test_get_application_no_start(self):
     """
     .get_application() should return an unstarted application worker if
     passed ``start=False``.
     """
     app_helper = self.add_helper(
         ApplicationHelper(RunningCheckApplication))
     app = yield app_helper.get_application({}, start=False)
     self.assertIsInstance(app, RunningCheckApplication)
     self.assertEqual(app.app_worker_running, False)
Пример #6
0
 def test_all_params(self):
     """
     ApplicationHelper should pass use_riak to its PersistenceHelper and all
     other params to its MessageHelper.
     """
     fake_app_class = object()
     app_helper = ApplicationHelper(fake_app_class,
                                    use_riak=True,
                                    transport_addr='Obs station')
     self.assertEqual(app_helper.persistence_helper.use_riak, True)
     self.assertEqual(app_helper.msg_helper.transport_addr, 'Obs station')
Пример #7
0
 def test_cleanup(self):
     """
     ApplicationHelper.cleanup() should call .cleanup() on its
     PersistenceHelper and WorkerHelper.
     """
     app_helper = ApplicationHelper(None)
     app_helper.persistence_helper = FakeCleanupCheckHelper()
     app_helper.worker_helper = FakeCleanupCheckHelper()
     self.assertEqual(app_helper.persistence_helper.cleaned_up, False)
     self.assertEqual(app_helper.worker_helper.cleaned_up, False)
     success_result_of(app_helper.cleanup())
     self.assertEqual(app_helper.persistence_helper.cleaned_up, True)
     self.assertEqual(app_helper.worker_helper.cleaned_up, True)
Пример #8
0
 def setUp(self):
     self.app_helper = self.add_helper(
         ApplicationHelper(DummyApplicationWorker))
     self.worker = yield self.app_helper.get_application({
         'send_to': {
             'default': {
                 'transport_name': 'default_transport',
             },
             'outbound1': {
                 'transport_name': 'outbound1_transport',
             },
         },
     })
Пример #9
0
 def test_defaults(self):
     """
     ApplicationHelper instances should have the expected parameter
     defaults.
     """
     fake_app_class = object()
     app_helper = ApplicationHelper(fake_app_class)
     self.assertEqual(app_helper.application_class, fake_app_class)
     self.assertIsInstance(app_helper.persistence_helper, PersistenceHelper)
     self.assertIsInstance(app_helper.msg_helper, MessageHelper)
     self.assertIsInstance(app_helper.worker_helper, WorkerHelper)
     dispatch_helper = app_helper.dispatch_helper
     self.assertIsInstance(dispatch_helper, MessageDispatchHelper)
     self.assertEqual(dispatch_helper.msg_helper, app_helper.msg_helper)
     self.assertEqual(dispatch_helper.worker_helper,
                      app_helper.worker_helper)
     self.assertEqual(app_helper.persistence_helper.use_riak, False)
Пример #10
0
    def get_worker(self, config=None):
        '''Get a new ChannelStatusWorker with the provided config'''
        if config is None:
            config = {}

        app_helper = ApplicationHelper(ChannelStatusWorker)
        yield app_helper.setup()
        self.addCleanup(app_helper.cleanup)

        persistencehelper = PersistenceHelper()
        yield persistencehelper.setup()
        self.addCleanup(persistencehelper.cleanup)

        config = conjoin(persistencehelper.mk_config({
            'channel_id': 'testchannel',
        }), config)

        worker = yield app_helper.get_application(config)
        returnValue(worker)
Пример #11
0
    def setUp(self):
        root = Resource()
        # data is elephant with a UTF-8 encoded BOM
        # it is a sad elephant (as seen in the wild)
        root.putChild("word", Data('\xef\xbb\xbfelephant\r\n', 'text/html'))
        site_factory = Site(root)
        self.webserver = yield reactor.listenTCP(0,
                                                 site_factory,
                                                 interface='127.0.0.1')
        self.add_cleanup(self.webserver.loseConnection)
        addr = self.webserver.getHost()
        random_word_url = "http://%s:%s/word" % (addr.host, addr.port)

        self.app_helper = self.add_helper(ApplicationHelper(HangmanWorker))

        self.worker = yield self.app_helper.get_application({
            'worker_name':
            'test_hangman',
            'random_word_url':
            random_word_url,
        })
        yield self.worker.session_manager.redis._purge_all()  # just in case
Пример #12
0
 def setUp(self):
     yield super(TestHTTPRelay, self).setUp()
     self.path = '/path'
     self.app_helper = self.add_helper(
         ApplicationHelper(HTTPRelayApplication))
Пример #13
0
 def setUp(self):
     self.app_helper = self.add_helper(
         ApplicationHelper(RockPaperScissorsWorker))
     self.worker = yield self.app_helper.get_application({})
Пример #14
0
 def setUp(self):
     self.app_helper = self.add_helper(
         ApplicationHelper(DummyApplicationWorker))
     self.worker = yield self.app_helper.get_application({})
Пример #15
0
 def setUp(self):
     self.app_helper = self.add_helper(ApplicationHelper(ApplicationWorker))
Пример #16
0
 def setUp(self):
     self.app_helper = self.add_helper(ApplicationHelper(CalculatorApp))
     self.worker = yield self.app_helper.get_application({})
Пример #17
0
 def setUp(self):
     self.app_helper = self.add_helper(
         ApplicationHelper(StaticReplyApplication))
Пример #18
0
 def setUp(self):
     self.app_helper = self.add_helper(ApplicationHelper(MemoWorker))
     self.worker = yield self.app_helper.get_application(
         {'worker_name': 'testmemo'})
     yield self.worker.redis._purge_all()  # just in case
Пример #19
0
 def setUp(self):
     self.app_helper = self.add_helper(ApplicationHelper(RapidSMSRelay))
Пример #20
0
 def setUp(self):
     self.app_helper = self.add_helper(ApplicationHelper(None))
     self.worker = yield self.app_helper.get_application({}, EchoTestApp)
Пример #21
0
 def setUp(self):
     self.app_helper = self.add_helper(ApplicationHelper(None))
     self.worker = yield self.app_helper.get_application({},
                                                         WordCountWorker)
Пример #22
0
 def test_implements_IHelper(self):
     """
     ApplicationHelper instances should provide the IHelper interface.
     """
     self.assertTrue(IHelper.providedBy(ApplicationHelper(None)))
Пример #23
0
 def setUp(self):
     self.app_helper = self.add_helper(
         ApplicationHelper(WikipediaWorker, transport_type='ussd'))
     self.fake_api = self.start_webserver(WIKIPEDIA_RESPONSES)
     self.fake_uss = self.start_webserver(USS_RESPONSES)
Пример #24
0
 def setUp(self):
     self.app_helper = self.add_helper(ApplicationHelper(TicTacToeWorker))
     self.worker = yield self.app_helper.get_application({})