def test_process(klio_msg, expected_log_messages, caplog): helloklio_fn = transforms.LogKlioMessage() output = helloklio_fn.process(klio_msg.SerializeToString()) assert klio_msg.SerializeToString() == list(output)[0] for index, record in enumerate(caplog.records): assert "INFO" == record.levelname assert expected_log_messages[index] == record.message
def test_process(klio_msg, expected_log_messages, caplog): helloklio_fn = transforms.LogKlioMessage() output = helloklio_fn.process(klio_msg.SerializeToString()) assert klio_msg.SerializeToString() == list(output)[0] assert len(caplog.records) == len(expected_log_messages) for index, record in enumerate(caplog.records): expected_log_message = expected_log_messages[index] assert expected_log_message["level"] == record.levelname assert expected_log_message["message"] in record.message
def test_process(klio_msg, expected_log_messages, caplog): helloklio_fn = transforms.LogKlioMessage() output = helloklio_fn.process(klio_msg.SerializeToString()) assert klio_msg.SerializeToString() == list(output)[0] # logs may not all be available yet since some may be on a different thread # so we'll wait a second time.sleep(1) assert len(caplog.records) == len(expected_log_messages) for index, record in enumerate(caplog.records): expected_log_message = expected_log_messages[index] assert expected_log_message["level"] == record.levelname assert expected_log_message["message"] in record.message
def test_process(klio_msg, expected_log_messages, caplog): helloklio_fn = transforms.LogKlioMessage() output = helloklio_fn.process(klio_msg.SerializeToString()) row = { "entity_id": klio_msg.data.element.decode("utf-8"), "value": klio_msg.data.element.decode("utf-8") } expected_kmsg = klio_pb2.KlioMessage() expected_kmsg.data.element = klio_msg.data.element expected_kmsg.data.payload = bytes(json.dumps(row), "utf-8") expected_kmsg.version = klio_pb2.Version.V2 assert expected_kmsg.SerializeToString() == list(output)[0] for index, record in enumerate(caplog.records): assert "INFO" == record.levelname assert expected_log_messages[index] == record.message
def test_process(klio_msg, expected_log_messages, caplog): helloklio_fn = transforms.LogKlioMessage() output = helloklio_fn.process(klio_msg.SerializeToString()) row = { "entity_id": klio_msg.data.element.decode("utf-8"), "value": klio_msg.data.element.decode("utf-8") } expected_kmsg = klio_pb2.KlioMessage() expected_kmsg.data.element = klio_msg.data.element expected_kmsg.data.payload = bytes(json.dumps(row), "utf-8") expected_kmsg.version = klio_pb2.Version.V2 assert expected_kmsg.SerializeToString() == list(output)[0] # logs may not all be available yet since some may be on a different thread # so we'll wait a second time.sleep(1) assert len(caplog.records) == len(expected_log_messages) for index, record in enumerate(caplog.records): expected_log_message = expected_log_messages[index] assert expected_log_message["level"] == record.levelname assert expected_log_message["message"] in record.message
def run(input_pcol, config): return input_pcol | beam.ParDo(transforms.LogKlioMessage())