コード例 #1
0
 def setUp(self):
     self.tx_helper = self.add_helper(TransportHelper(self.transport_class))
     self.fake_http = FakeHttpServer(self.handle_inbound_request)
     self.clock = Clock()
     self._request_queue = DeferredQueue()
     self._pending_reqs = []
     self.add_cleanup(self.finish_requests)
コード例 #2
0
 def test_setup_sync(self):
     """
     TransportHelper.setup() should return ``None``, not a Deferred.
     """
     msg_helper = TransportHelper(None)
     self.add_cleanup(msg_helper.cleanup)
     self.assertEqual(msg_helper.setup(), None)
コード例 #3
0
ファイル: test_smpp_transport.py プロジェクト: areski/vumi
    def setUp(self):

        self.clock = Clock()
        self.patch(self.transport_class, 'service_class', DummyService)
        self.patch(self.transport_class, 'clock', self.clock)

        self.string_transport = proto_helpers.StringTransport()

        self.tx_helper = self.add_helper(TransportHelper(self.transport_class))
        self.default_config = {
            'transport_name':
            self.tx_helper.transport_name,
            'twisted_endpoint':
            'tcp:host=127.0.0.1:port=0',
            'delivery_report_processor':
            'vumi.transports.smpp.processors.'
            'DeliveryReportProcessor',
            'deliver_short_message_processor':
            ('vumi.transports.smpp.processors.'
             'DeliverShortMessageProcessor'),
            'system_id':
            'foo',
            'password':
            '******',
            'deliver_short_message_processor_config': {
                'data_coding_overrides': {
                    0: 'utf-8',
                }
            }
        }
コード例 #4
0
    def setUp(self):
        self.fake_http = FakeHttpServer(self.handle_inbound_request)
        self.outbound_requests = DeferredQueue()
        self.fake_http_response = ''
        self.fake_http_response_code = http.OK
        self.base_url = "http://apposit.example.com/"

        config = {
            'web_path': 'api/v1/apposit/sms',
            'web_port': 0,
            'credentials': {
                '8123': {
                    'username': '******',
                    'password': '******',
                    'service_id': 'service-id-1',
                },
                '8124': {
                    'username': '******',
                    'password': '******',
                    'service_id': 'service-id-2',
                }
            },
            'outbound_url': self.base_url,
        }
        self.tx_helper = self.add_helper(
            TransportHelper(AppositTransport,
                            transport_addr='8123',
                            mobile_addr='251911223344'))
        self.transport = yield self.tx_helper.get_transport(config)
        self.transport.agent_factory = self.fake_http.get_agent
        self.transport_url = self.transport.get_transport_url()
        self.web_path = config['web_path']
コード例 #5
0
ファイル: test_mtn_nigeria.py プロジェクト: musabaloyi/vumi
    def setUp(self):
        self.tx_helper = self.add_helper(
            TransportHelper(MtnNigeriaUssdTransport))
        deferred_login = self.fake_login(
            mtn_nigeria_ussd.MtnNigeriaUssdClientFactory.protocol)
        deferred_server = self.start_server()
        self.add_cleanup(self.stop_server)

        self.transport = yield self.tx_helper.get_transport({
            'server_hostname':
            '127.0.0.1',
            'server_port':
            self.get_server_port(),
            'username':
            '******',
            'password':
            '******',
            'application_id':
            '1029384756',
            'enquire_link_interval':
            240,
            'timeout_period':
            120,
            'user_termination_response':
            'Bye',
        })
        # We need to tear the transport down before stopping the server.
        self.add_cleanup(self.transport.stopWorker)
        yield deferred_server

        self.session_manager = self.transport.session_manager
        yield self.session_manager.redis._purge_all()

        yield deferred_login
        self.client = self.transport.factory.client
コード例 #6
0
ファイル: test_mediaedgegsm.py プロジェクト: miamitops/vumi
    def setUp(self):
        self.mediaedgegsm_calls = DeferredQueue()
        self.mock_mediaedgegsm = MockHttpServer(self.handle_request)
        self.add_cleanup(self.mock_mediaedgegsm.stop)
        yield self.mock_mediaedgegsm.start()

        self.config = {
            'web_path': "foo",
            'web_port': 0,
            'username': '******',
            'password': '******',
            'outbound_url': self.mock_mediaedgegsm.url,
            'outbound_username': '******',
            'outbound_password': '******',
            'operator_mappings': {
                '417': {
                    '417912': 'VODA',
                    '417913': 'TIGO',
                    '417914': 'UNKNOWN',
                }
            }
        }
        self.tx_helper = self.add_helper(
            TransportHelper(MediaEdgeGSMTransport))
        self.transport = yield self.tx_helper.get_transport(self.config)
        self.transport_url = self.transport.get_transport_url()
        self.mediaedgegsm_response = ''
        self.mediaedgegsm_response_code = http.OK
コード例 #7
0
    def setUp(self):
        self.fake_cellulant = FakeCellulant()
        self.base_url = "http://cellulant.example.com/"

        self.config = {
            'web_path': "foo",
            'web_port': 0,
            'credentials': {
                '2371234567': {
                    'username': '******',
                    'password': '******',
                },
                '9292': {
                    'username': '******',
                    'password': '******',
                }
            },
            'outbound_url': self.base_url,
            'validation_mode': 'permissive',
        }
        self.tx_helper = self.add_helper(
            TransportHelper(CellulantSmsTransport))
        self.transport = yield self.tx_helper.get_transport(self.config)
        self.transport.agent_factory = self.fake_cellulant.get_agent
        self.transport_url = self.transport.get_transport_url()
コード例 #8
0
ファイル: test_sixdee.py プロジェクト: westerncapelabs/vumi
 def setUp(self):
     self.clock = Clock()
     self.fake_smsc = FakeSMSC()
     self.tx_helper = self.add_helper(
         TransportHelper(SmppTransceiverTransport))
     self.default_config = {
         'transport_name':
         self.tx_helper.transport_name,
         'twisted_endpoint':
         self.fake_smsc.endpoint,
         'deliver_short_message_processor':
         ('vumi.transports.smpp.processors.sixdee.'
          'DeliverShortMessageProcessor'),
         'submit_short_message_processor':
         ('vumi.transports.smpp.processors.sixdee.'
          'SubmitShortMessageProcessor'),
         'system_id':
         'foo',
         'password':
         '******',
         'deliver_short_message_processor_config': {
             'data_coding_overrides': {
                 0: 'utf-8',
             }
         },
         'submit_short_message_processor_config': {
             'submit_sm_encoding': 'utf-16be',
             'submit_sm_data_coding': 8,
             'send_multipart_udh': True,
         }
     }
コード例 #9
0
    def setUp(self):
        self.mediaedgegsm_calls = DeferredQueue()
        self.fake_http = FakeHttpServer(self.handle_request)
        self.base_url = "http://mediaedgegsm.example.com/"

        self.config = {
            'web_path': "foo",
            'web_port': 0,
            'username': '******',
            'password': '******',
            'outbound_url': self.base_url,
            'outbound_username': '******',
            'outbound_password': '******',
            'operator_mappings': {
                '417': {
                    '417912': 'VODA',
                    '417913': 'TIGO',
                    '417914': 'UNKNOWN',
                }
            }
        }
        self.tx_helper = self.add_helper(
            TransportHelper(MediaEdgeGSMTransport))
        self.transport = yield self.tx_helper.get_transport(self.config)
        self.transport.agent_factory = self.fake_http.get_agent
        self.transport_url = self.transport.get_transport_url()
        self.mediaedgegsm_response = ''
        self.mediaedgegsm_response_code = http.OK
コード例 #10
0
ファイル: test_airtel.py プロジェクト: musabaloyi/vumi
 def setUp(self):
     self.default_config = {
         'web_port': 0,
         'web_path': '/api/v1/airtel/ussd/',
         'validation_mode': 'permissive',
     }
     self.tx_helper = self.add_helper(TransportHelper(AirtelUSSDTransport))
コード例 #11
0
    def setUp(self):
        self.cellulant_sms_calls = DeferredQueue()
        self.mock_cellulant_sms = MockHttpServer(self.handle_request)
        yield self.mock_cellulant_sms.start()
        self.add_cleanup(self.mock_cellulant_sms.stop)

        self.config = {
            'web_path': "foo",
            'web_port': 0,
            'credentials': {
                '2371234567': {
                    'username': '******',
                    'password': '******',
                },
                '9292': {
                    'username': '******',
                    'password': '******',
                }
            },
            'outbound_url': self.mock_cellulant_sms.url,
            'validation_mode': 'permissive',
        }
        self.tx_helper = self.add_helper(
            TransportHelper(CellulantSmsTransport))
        self.transport = yield self.tx_helper.get_transport(self.config)
        self.transport_url = self.transport.get_transport_url()
コード例 #12
0
ファイル: test_apposit.py プロジェクト: linkedinyou/vumi
    def setUp(self):
        self.mock_server = MockHttpServer(self.handle_inbound_request)
        self.outbound_requests = DeferredQueue()
        self.mock_server_response = ''
        self.mock_server_response_code = http.OK
        yield self.mock_server.start()
        self.add_cleanup(self.mock_server.stop)

        config = {
            'web_path': 'api/v1/apposit/sms',
            'web_port': 0,
            'credentials': {
                '8123': {
                    'username': '******',
                    'password': '******',
                    'service_id': 'service-id-1',
                },
                '8124': {
                    'username': '******',
                    'password': '******',
                    'service_id': 'service-id-2',
                }
            },
            'outbound_url': self.mock_server.url,
        }
        self.tx_helper = self.add_helper(
            TransportHelper(
                AppositTransport, transport_addr='8123',
                mobile_addr='251911223344'))
        self.transport = yield self.tx_helper.get_transport(config)
        self.transport_url = self.transport.get_transport_url()
        self.web_path = config['web_path']
コード例 #13
0
 def test_get_application_different_class(self):
     """
     .get_transport() should return an instance of the specified worker
     class if one is provided.
     """
     tx_helper = self.add_helper(TransportHelper(Transport))
     app = yield tx_helper.get_transport({}, cls=RunningCheckTransport)
     self.assertIsInstance(app, RunningCheckTransport)
コード例 #14
0
 def test_get_transport_defaults(self):
     """
     .get_transport() should return a started transport worker.
     """
     tx_helper = self.add_helper(TransportHelper(RunningCheckTransport))
     app = yield tx_helper.get_transport({})
     self.assertIsInstance(app, RunningCheckTransport)
     self.assertEqual(app.tx_worker_running, True)
コード例 #15
0
ファイル: test_httprpc.py プロジェクト: miamitops/vumi
 def setUp(self):
     config = {
         'web_path': "foo",
         'web_port': 0,
     }
     self.tx_helper = self.add_helper(TransportHelper(JSONTransport))
     self.transport = yield self.tx_helper.get_transport(config)
     self.transport_url = self.transport.get_transport_url()
コード例 #16
0
 def setUp(self):
     self.tx_helper = self.add_helper(TransportHelper(InfobipTransport))
     self.transport = yield self.tx_helper.get_transport({
         'transport_type': 'ussd',
         'web_path': "/session/",
         'web_port': 0,
     })
     self.transport_url = self.transport.get_transport_url()
     yield self.transport.session_manager.redis._purge_all()  # just in case
コード例 #17
0
ファイル: test_airtel.py プロジェクト: musabaloyi/vumi
 def setUp(self):
     self.tx_helper = self.add_helper(TransportHelper(AirtelUSSDTransport))
     self.config = self.mk_config()
     self.transport = yield self.tx_helper.get_transport(self.config)
     self.session_manager = self.transport.session_manager
     self.add_cleanup(self.session_manager.stop)
     self.transport_url = self.transport.get_transport_url(
         self.config['web_path'])
     yield self.session_manager.redis._purge_all()  # just in case
コード例 #18
0
 def test_get_transport_no_start(self):
     """
     .get_transport() should return an unstarted transport worker if passed
     ``start=False``.
     """
     tx_helper = self.add_helper(TransportHelper(RunningCheckTransport))
     app = yield tx_helper.get_transport({}, start=False)
     self.assertIsInstance(app, RunningCheckTransport)
     self.assertEqual(app.tx_worker_running, False)
コード例 #19
0
ファイル: test_oldapi.py プロジェクト: musabaloyi/vumi
    def setUp(self):
        self.config = {
            'web_path': "foo",
            'web_port': 0,
        }
        self.tx_helper = self.add_helper(
            TransportHelper(OldTemplateHttpTransport))

        self.transport = yield self.tx_helper.get_transport(self.config)
        self.transport_url = self.transport.get_transport_url()
コード例 #20
0
ファイル: test_vumi_bridge.py プロジェクト: linkedinyou/vumi
    def setUp(self):
        self.tx_helper = self.add_helper(TransportHelper(self.transport_class))
        self.mock_server = MockHttpServer(self.handle_inbound_request)
        self.add_cleanup(self.mock_server.stop)
        self.clock = Clock()

        yield self.mock_server.start()

        self._pending_reqs = []
        self.add_cleanup(self.finish_requests)
コード例 #21
0
 def test_all_params(self):
     """
     TransportHelper should pass use_riak to its PersistenceHelper and all
     other params to its MessageHelper.
     """
     fake_tx_class = object()
     tx_helper = TransportHelper(
         fake_tx_class, use_riak=True, transport_addr='Obs station')
     self.assertEqual(tx_helper.persistence_helper.use_riak, True)
     self.assertEqual(tx_helper.msg_helper.transport_addr, 'Obs station')
コード例 #22
0
ファイル: test_httprpc.py プロジェクト: miamitops/vumi
 def setUp(self):
     config = {
         'web_path': "foo",
         'web_port': 0,
         'username': '******',
         'password': '******',
     }
     self.tx_helper = self.add_helper(
         TransportHelper(CustomOutboundTransport))
     self.transport = yield self.tx_helper.get_transport(config)
     self.transport_url = self.transport.get_transport_url()
コード例 #23
0
 def setUp(self):
     self.tx_helper = self.add_helper(
         TransportHelper(TrueAfricanUssdTransport))
     self.clock = Clock()
     self.patch(TrueAfricanUssdTransport, 'get_clock', lambda _: self.clock)
     self.transport = yield self.tx_helper.get_transport({
         'interface': '127.0.0.1',
         'port': 0,
         'request_timeout': 10,
     })
     self.service_url = self.get_service_url(self.transport)
コード例 #24
0
ファイル: test_oldapi.py プロジェクト: musabaloyi/vumi
    def setUp(self):
        self.config = {
            'web_path': "foo",
            'web_port': 0,
        }
        self.tx_helper = self.add_helper(
            TransportHelper(OldSimpleHttpTransport))

        self.transport = yield self.tx_helper.get_transport(self.config)
        addr = self.transport.web_resource.getHost()
        self.transport_url = "http://%s:%s/" % (addr.host, addr.port)
コード例 #25
0
 def setUp(self):
     self.config = {
         'web_port': 0,
         'web_path': '/api/v1/ussd/cellulant/',
         'ussd_session_timeout': 60,
     }
     self.tx_helper = self.add_helper(TransportHelper(CellulantTransport))
     self.transport = yield self.tx_helper.get_transport(self.config)
     self.transport_url = self.transport.get_transport_url(
         self.config['web_path'])
     yield self.transport.session_manager.redis._purge_all()  # just in case
コード例 #26
0
ファイル: test_safaricom.py プロジェクト: musabaloyi/vumi
 def setUp(self):
     config = {
         'web_port': 0,
         'web_path': '/api/v1/safaricom/ussd/',
     }
     self.tx_helper = self.add_helper(TransportHelper(SafaricomTransport))
     self.transport = yield self.tx_helper.get_transport(config)
     self.session_manager = self.transport.session_manager
     self.transport_url = self.transport.get_transport_url(
         config['web_path'])
     yield self.session_manager.redis._purge_all()  # just in case
コード例 #27
0
ファイル: test_api.py プロジェクト: musabaloyi/vumi
    def setUp(self):
        self.config = {
            'web_path': "foo",
            'web_port': 0,
        }
        test_method = getattr(self, self._testMethodName)
        config_override = getattr(test_method, 'config_override', {})
        self.config.update(config_override)
        self.tx_helper = self.add_helper(TransportHelper(HttpApiTransport))

        self.transport = yield self.tx_helper.get_transport(self.config)
        self.transport_url = self.transport.get_transport_url()
コード例 #28
0
ファイル: test_httprpc.py プロジェクト: miamitops/vumi
 def setUp(self):
     self.clock = Clock()
     self.patch(OkTransport, 'get_clock', lambda _: self.clock)
     config = {
         'web_path': "foo",
         'web_port': 0,
         'request_timeout': 10,
         'request_timeout_status_code': 418,
         'request_timeout_body': 'I am a teapot',
     }
     self.tx_helper = self.add_helper(TransportHelper(OkTransport))
     self.transport = yield self.tx_helper.get_transport(config)
     self.transport_url = self.transport.get_transport_url()
コード例 #29
0
 def setUp(self):
     self.tx_helper = self.add_helper(TransportHelper(TruteqTransport))
     self.fake_server = FakeServer.for_protocol(SSMIServerProtocol)
     self.config = {
         'username': '******',
         'password': '******',
         'twisted_endpoint': self.fake_server.endpoint,
     }
     self.transport = yield self.tx_helper.get_transport(self.config)
     self.conn = yield self.fake_server.await_connection()
     yield self.conn.await_connected()
     self.server = self.conn.server_protocol
     yield self.process_login_commands(self.server, 'username', 'password')
コード例 #30
0
 def test_cleanup(self):
     """
     TransportHelper.cleanup() should call .cleanup() on its
     PersistenceHelper and WorkerHelper.
     """
     tx_helper = TransportHelper(None)
     tx_helper.persistence_helper = FakeCleanupCheckHelper()
     tx_helper.worker_helper = FakeCleanupCheckHelper()
     self.assertEqual(tx_helper.persistence_helper.cleaned_up, False)
     self.assertEqual(tx_helper.worker_helper.cleaned_up, False)
     success_result_of(tx_helper.cleanup())
     self.assertEqual(tx_helper.persistence_helper.cleaned_up, True)
     self.assertEqual(tx_helper.worker_helper.cleaned_up, True)