def test_store_piggyback_raw_data_second_source(): time_settings = [(None, "max_cache_age", piggyback_max_cachefile_age) ] # type: piggyback.PiggybackTimeSettings piggyback.store_piggyback_raw_data( "source2", {"test-host": [ b"<<<check_mk>>>", b"lulu", ]}) for raw_data_info in piggyback.get_piggyback_raw_data( "test-host", time_settings): assert raw_data_info.source_hostname in ["source1", "source2"] if raw_data_info.source_hostname == "source1": assert raw_data_info.file_path.endswith('/test-host/source1') assert raw_data_info.successfully_processed is True assert raw_data_info.reason.startswith( "Successfully processed from source 'source1'") assert raw_data_info.reason_status == 0 assert raw_data_info.raw_data == b'<<<check_mk>>>\nlala\n' else: # source2 assert raw_data_info.file_path.endswith('/test-host/source2') assert raw_data_info.successfully_processed is True assert raw_data_info.reason.startswith( "Successfully processed from source 'source2'") assert raw_data_info.reason_status == 0 assert raw_data_info.raw_data == b'<<<check_mk>>>\nlulu\n'
def test_store_piggyback_raw_data_new_host(): time_settings = [(None, "max_cache_age", piggyback_max_cachefile_age)] piggyback.store_piggyback_raw_data("source2", {"pig": [ b"<<<check_mk>>>", b"lulu", ]}) for raw_data_info in piggyback.get_piggyback_raw_data("pig", time_settings): assert raw_data_info.source_hostname == "source2" assert raw_data_info.file_path.endswith('/pig/source2') assert raw_data_info.successfully_processed is True assert raw_data_info.reason.startswith("Successfully processed from source 'source2'") assert raw_data_info.reason_status == 0 assert raw_data_info.raw_data == b'<<<check_mk>>>\nlulu\n'
def test_get_source_and_piggyback_hosts(): time_settings: piggyback.PiggybackTimeSettings = [ (None, "max_cache_age", piggyback_max_cachefile_age) ] cmk.utils.paths.piggyback_source_dir.mkdir(parents=True, exist_ok=True) piggyback.store_piggyback_raw_data( HostName("source1"), { HostName("test-host2"): [ b"<<<check_mk>>>", b"source1", ], HostName("test-host"): [ b"<<<check_mk>>>", b"source1", ], }, ) # Fake age the test-host piggyback file os.utime( str(cmk.utils.paths.piggyback_dir / "test-host" / "source1"), (time.time() - 10, time.time() - 10), ) piggyback.store_piggyback_raw_data( HostName("source1"), {HostName("test-host2"): [ b"<<<check_mk>>>", b"source1", ]}, ) piggyback.store_piggyback_raw_data( HostName("source2"), { HostName("test-host2"): [ b"<<<check_mk>>>", b"source2", ], HostName("test-host"): [ b"<<<check_mk>>>", b"source2", ], }, ) assert sorted(list( piggyback.get_source_and_piggyback_hosts(time_settings))) == sorted([ (HostName("source1"), HostName("test-host2")), (HostName("source2"), HostName("test-host")), (HostName("source2"), HostName("test-host2")), ])
def test_get_source_and_piggyback_hosts(): time_settings = [(None, "max_cache_age", piggyback_max_cachefile_age) ] # type: piggyback.PiggybackTimeSettings cmk.utils.paths.piggyback_source_dir.mkdir(parents=True, exist_ok=True) piggyback.store_piggyback_raw_data( "source1", { "test-host2": [ b"<<<check_mk>>>", b"source1", ], "test-host": [ b"<<<check_mk>>>", b"source1", ] }) # Fake age the test-host piggyback file os.utime(str(cmk.utils.paths.piggyback_dir / "test-host" / "source1"), (time.time() - 10, time.time() - 10)) piggyback.store_piggyback_raw_data( "source1", {"test-host2": [ b"<<<check_mk>>>", b"source1", ]}) piggyback.store_piggyback_raw_data( "source2", { "test-host2": [ b"<<<check_mk>>>", b"source2", ], "test-host": [ b"<<<check_mk>>>", b"source2", ] }) assert sorted(list( piggyback.get_source_and_piggyback_hosts(time_settings))) == sorted([ ('source1', 'test-host2'), ('source2', 'test-host'), ('source2', 'test-host2'), ])