コード例 #1
0
def test_parse(schema, fixtures):
    parser = parse.MessageParser()
    for fixture_file in fixtures:
        with open(fixture_file, 'r') as f:
            data = json.load(f)
        expected = get_expected(data, schema)
        actual = parser.parse(data, schema)
        assert expected == actual
コード例 #2
0
def consumer(subscriber_client, flow_control, validator, event_loop,
             channel_pair, metrics):
    config = {
        'subscription': '/projects/test-project/subscriptions/test-sub',
        'max_msg_age': 1000
    }
    success, error = channel_pair
    parser = parse.MessageParser()
    client = event_consumer.GPSEventConsumer(config, success, error, metrics,
                                             subscriber_client, flow_control,
                                             validator, parser, event_loop)
    return client
コード例 #3
0
    def build_event_consumer(self):
        self._validate_config()
        validator = validate.MessageValidator()
        parser = parse.MessageParser()
        auth_client = self._init_auth()
        subscriber, flow_control = self._init_subscriber_client(auth_client)
        if not self.kwargs.get('loop'):
            self.kwargs['loop'] = asyncio.get_event_loop()

        return GPSEventConsumer(self.config, self.success_channel,
                                self.error_channel, self.metrics, subscriber,
                                flow_control, validator, parser, **self.kwargs)