def test_get_piggyback_raw_data_source_not_sending_anymore(): assert piggyback.get_piggyback_raw_data(piggyback_max_cachefile_age, "test-host") == [ ('source1', '<<<check_mk>>>\nlala\n') ] piggyback.store_piggyback_raw_data("source1", {}) assert piggyback.get_piggyback_raw_data(piggyback_max_cachefile_age, "test-host") == []
def test_get_piggyback_raw_data_outdate_old_pigs(): assert piggyback.get_piggyback_raw_data(piggyback_max_cachefile_age, "test-host") == [('source1', '<<<check_mk>>>\nlala\n')] # 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": [ u"<<<check_mk>>>", u"lulu", ]}) assert piggyback.get_piggyback_raw_data(piggyback_max_cachefile_age, "test-host") == []
def test_store_piggyback_raw_data_second_source(): time_settings = {(None, "max_cache_age"): piggyback_max_cachefile_age} piggyback.store_piggyback_raw_data( "source2", {"test-host": [ u"<<<check_mk>>>", u"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 == '<<<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 == '<<<check_mk>>>\nlulu\n'
def test_store_piggyback_raw_data_new_host(): piggyback.store_piggyback_raw_data("source2", {"pig": [ u"<<<check_mk>>>", u"lulu", ]}) assert piggyback.get_piggyback_raw_data(piggyback_max_cachefile_age, "pig") == [ ('source2', '<<<check_mk>>>\nlulu\n'), ]
def test_get_piggyback_raw_data_successful(): time_settings = {(None, "max_cache_age"): piggyback_max_cachefile_age} for raw_data_info in piggyback.get_piggyback_raw_data( "test-host", time_settings): assert 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 == "Successfully processed from source 'source1'" assert raw_data_info.reason_status == 0 assert raw_data_info.raw_data == '<<<check_mk>>>\nlala\n'
def test_get_piggyback_raw_data_too_old_global(): time_settings = {(None, "max_cache_age"): -1} for raw_data_info in piggyback.get_piggyback_raw_data( "test-host", time_settings): assert raw_data_info.source_hostname == "source1" assert raw_data_info.file_path.endswith('/test-host/source1') assert raw_data_info.successfully_processed is False assert raw_data_info.reason.startswith("Piggyback file too old:") assert raw_data_info.reason_status == 0 assert raw_data_info.raw_data == '<<<check_mk>>>\nlala\n'
def test_store_piggyback_raw_data_second_source(): piggyback.store_piggyback_raw_data("source2", {"test-host": [ u"<<<check_mk>>>", u"lulu", ]}) assert sorted(piggyback.get_piggyback_raw_data(piggyback_max_cachefile_age, "test-host")) == sorted([ ('source1', '<<<check_mk>>>\nlala\n'), ('source2', '<<<check_mk>>>\nlulu\n'), ],)
def test_get_piggyback_raw_data_piggybacked_host_validity2( time_settings, successfully_processed, reason, reason_status): # Fake age the test-host piggyback file os.utime(str(cmk.utils.paths.piggyback_dir / "test-host" / "source1"), (time.time() - 10, time.time() - 10)) for raw_data_info in piggyback.get_piggyback_raw_data( "test-host", time_settings): assert raw_data_info.source_hostname == "source1" assert raw_data_info.file_path.endswith('/test-host/source1') assert raw_data_info.successfully_processed is successfully_processed assert raw_data_info.reason == reason assert raw_data_info.reason_status == reason_status assert raw_data_info.raw_data == '<<<check_mk>>>\nlala\n'
def test_get_piggyback_raw_data_not_sending(): time_settings = {(None, "max_cache_age"): piggyback_max_cachefile_age} source_status_file = cmk.utils.paths.piggyback_source_dir / "source1" if source_status_file.exists(): os.remove(str(source_status_file)) for raw_data_info in piggyback.get_piggyback_raw_data( "test-host", time_settings): assert raw_data_info.source_hostname == "source1" assert raw_data_info.file_path.endswith('/test-host/source1') assert raw_data_info.successfully_processed is False assert raw_data_info.reason == "Source 'source1' not sending piggyback data" assert raw_data_info.reason_status == 0 assert raw_data_info.raw_data == '<<<check_mk>>>\nlala\n'
def test_get_piggyback_raw_data_source_validity2(time_settings, successfully_processed, reason, reason_status): source_status_file = cmk.utils.paths.piggyback_source_dir / "source1" if source_status_file.exists(): os.remove(str(source_status_file)) for raw_data_info in piggyback.get_piggyback_raw_data( "test-host", time_settings): assert raw_data_info.source_hostname == "source1" assert raw_data_info.file_path.endswith('/test-host/source1') assert raw_data_info.successfully_processed is successfully_processed assert raw_data_info.reason == reason assert raw_data_info.reason_status == reason_status assert raw_data_info.raw_data == '<<<check_mk>>>\nlala\n'
def test_get_piggyback_raw_data_not_updated(): time_settings = {(None, "max_cache_age"): piggyback_max_cachefile_age} # Fake age the test-host piggyback file os.utime(str(cmk.utils.paths.piggyback_dir / "test-host" / "source1"), (time.time() - 10, time.time() - 10)) for raw_data_info in piggyback.get_piggyback_raw_data( "test-host", time_settings): assert raw_data_info.source_hostname == "source1" assert raw_data_info.file_path.endswith('/test-host/source1') assert raw_data_info.successfully_processed is False assert raw_data_info.reason == "Piggyback file not updated by source 'source1'" assert raw_data_info.reason_status == 0 assert raw_data_info.raw_data == '<<<check_mk>>>\nlala\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": [ u"<<<check_mk>>>", u"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 == '<<<check_mk>>>\nlulu\n'
def _raw_data(name): return get_piggyback_raw_data(piggyback_max_cachefile_age, name)
def _raw_data(hostname, time_settings): return get_piggyback_raw_data(hostname, time_settings)
def test_get_piggyback_raw_data_no_data(): time_settings = {(None, "max_cache_age"): piggyback_max_cachefile_age} assert piggyback.get_piggyback_raw_data("no-host", time_settings) == []
def test_get_piggyback_raw_data_no_data(): assert piggyback.get_piggyback_raw_data(piggyback_max_cachefile_age, "nohost") == []
def test_get_piggyback_raw_data(): assert piggyback.get_piggyback_raw_data(piggyback_max_cachefile_age, "test-host") == [('source1', '<<<check_mk>>>\nlala\n')]