def test_check_functions_perfdata(info, discovered, checked): check = Check("lnx_thermal") parsed = check.run_parse(info) for (item, _params), result in zip(discovered, checked): assert check.run_check(item, {}, parsed) == result
def test_check_mbg_lantime_ng_refclock_gps(info, item, params, expected): check = Check("mbg_lantime_ng_refclock.gps") result = CheckResult(check.run_check(item, params, info)) assertCheckResultsEqual(result, expected)
def test_oracle_instance_uptime_check_error(info): main_check = Check('oracle_instance') check = Check('oracle_instance.uptime') with pytest.raises(MKCounterWrapped): check.run_check("+ASM", {}, main_check.run_parse(info))
def test_oracle_jobs_check_error(info): check = Check('oracle_jobs') with pytest.raises(MKCounterWrapped): check.run_check("DB19.SYS.JOB1", {}, info)
def test_wmi_cpuload_timeout_exceptions(check_name, info, expected): check = Check(check_name) with pytest.raises(MKCounterWrapped): CheckResult(check.run_check(None, {}, check.run_parse(info)))
def test_df_check_with_parse(item, params, info, expected_result): check = Check('df') actual = CheckResult(check.run_check(item, params, parse_df(info))) expected = CheckResult(expected_result) assertCheckResultsEqual(actual, expected)
def test_apc_netbotz_drycontact_check(item, params, data, expected): check = Check("apc_netbotz_drycontact") assert check.run_check(item, params, data) == expected
def test_check(params, parsed, expected): check = Check(CHECK_NAME) actual = list(check.run_check(None, params, parsed)) assert actual == expected
def test_ra32e_power_check_nodata(): check = Check(RA32E_POWER) result = BasicCheckResult(*check.run_check(None, {}, [['']])) assert result.status == 3 assert 'unknown' in result.infotext
def test_ra32e_power_check_acpower(): check = Check(RA32E_POWER) result = BasicCheckResult(*check.run_check(None, {}, [['1']])) assert result.status == 0 assert 'AC/Utility' in result.infotext
def test_fileinfo_min_max_age_levels(): # This test has the following purpose: # For each file attr (size or age) the levels 'min*', 'max*' are evaluated. # 'min*' is evaluated first and if 'max*' returns state '0' (eg. not set) # the service state is also '0'. check = Check("fileinfo") item = u'c:\\filetest\\check_mk.txt' parsed = check.run_parse([ [u'8'], [u'c:\\filetest\\check_mk.txt', u'7', u'5'], ]) size_result = BasicCheckResult( 0, "Size: 7 B", [ PerfValue('size', 7, None, None, None, None), ], ) # minage matches output_minage = check.run_check(item, { 'minage': (5, 1), }, parsed) # In 1.6.0 warn, crit of minage was added, but now we use the # generic check_levels function. assertCheckResultsEqual( CheckResult(output_minage), CheckResult([ size_result, BasicCheckResult( 1, "Age: 3.00 s (warn/crit below 5.00 s/1.00 s)", [ PerfValue('age', 3, None, None, None, None), ], ), ])) # maxage matches output_maxage = check.run_check(item, { 'maxage': (1, 2), }, parsed) assertCheckResultsEqual( CheckResult(output_maxage), CheckResult([ size_result, BasicCheckResult( 2, "Age: 3.00 s (warn/crit at 1.00 s/2.00 s)", [ PerfValue('age', 3, 1, 2, None, None), ], ), ])) # both match # This should never happen (misconfiguration), but test the order # of min* vs. max* and perfdata (always take the upper levels) # In 1.6.0 levels text of minage was added, but now we use the # generic check_levels function. output_both = check.run_check(item, { 'minage': (5, 1), 'maxage': (1, 2), }, parsed) assertCheckResultsEqual( CheckResult(output_both), CheckResult([ size_result, BasicCheckResult( 2, "Age: 3.00 s (warn/crit at 1.00 s/2.00 s)", [ PerfValue('age', 3, 1, 2, None, None), ], ), ]))