예제 #1
0
    def test_emit_location(self, mock_producer):
        client = StreamClient(kafka_addr='addr', kafka_topic='topic')
        resp = client.emit_location(self.mock_location)

        self.assertTrue(mock_producer().send.calledWith(
            'topic', self.mock_location))
        self.assertIsNone(resp)
예제 #2
0
    def __init__(self, app):
        """
        Create an application context object,

        :param app: Flask application instance.
        """
        self.config = ConfigClient()
        self.cache = CacheClient(
            addr=self.config.get_value('redis.addr'),
            prefix='orion',
        )
        self.db = DbClient(
            app,
            user=self.config.get_value('database.user'),
            password=self.config.get_value('database.password'),
            host=self.config.get_value('database.host'),
            port=self.config.get_value('database.port'),
            name=self.config.get_value('database.name'),
        )
        self.geocode = ReverseGeocodingClient(
            mapbox_access_token=self.config.get_value('mapbox_access_token'),
        )
        self.metrics_event = EventMetricsClient(
            addr=self.config.get_value('statsd.addr'),
            prefix='orion',
        )
        self.metrics_latency = LatencyMetricsClient(
            addr=self.config.get_value('statsd.addr'),
            prefix='orion',
        )
        self.stream = StreamClient(
            kafka_addr=self.config.get_value('kafka.addr'),
            kafka_topic=self.config.get_value('kafka.topic'),
        )
예제 #3
0
    def __init__(self, app):
        """
        Create an application context object,

        :param app: Flask application instance.
        """
        self.config = ConfigClient()
        self.db = DbClient(
            app,
            user=self.config.get_value('database.user'),
            password=self.config.get_value('database.password'),
            host=self.config.get_value('database.host'),
            port=self.config.get_value('database.port'),
            name=self.config.get_value('database.name'),
        )
        self.geocode = ReverseGeocodingClient(
            google_api_key=self.config.get_value('google_api_key'),
        )
        self.stream = StreamClient(
            kafka_addr=self.config.get_value('kafka.addr'),
            kafka_topic=self.config.get_value('kafka.topic'),
        )
예제 #4
0
    def test_init_noop_producer(self, mock_producer):
        client = StreamClient(kafka_addr=None, kafka_topic='topic')

        self.assertFalse(mock_producer.called)
        self.assertEqual(client.topic, 'topic')
예제 #5
0
    def test_init_kafka_producer(self, mock_producer):
        client = StreamClient(kafka_addr='addr', kafka_topic='topic')

        self.assertTrue(mock_producer.called)
        self.assertEqual(client.topic, 'topic')