def report(rpms, uname): if rpms is not None: bash_ver = rpms.get_max('bash') if uname is not None: return make_pass('PASS', bash_ver=bash_ver.nvr, uname_ver=uname.version) else: return make_fail('FAIL', bash_ver=bash_ver.nvr, path=rpms.file_path)
def test_validate_good_response(): assert plugins.make_response("a_test", foo="bar") == { "type": "rule", "error_key": "a_test", "foo": "bar" } assert plugins.make_fail("a_test", foo="bar") == { "type": "rule", "error_key": "a_test", "foo": "bar" } assert plugins.make_pass("a_test", foo="bar") == { "type": "pass", "pass_key": "a_test", "foo": "bar" } assert plugins.make_fingerprint("a_test", foo="bar") == { "type": "fingerprint", "fingerprint_key": "a_test", "foo": "bar" } assert plugins.make_metadata(foo="bar") == { "type": "metadata", "foo": "bar" } assert plugins.make_metadata_key("foo", "bar") == { "type": "metadata_key", "key": "foo", "value": "bar" }
def report(root_login, sshd, release): if sshd and release: if root_login: # The issue is detected. return make_fail('SSHD_ROOT_LOGIN_PERMITTED', os=release) # The issue does not exist. return make_pass('SSHD_ROOT_LOGIN_DISABLED', os=release)
def report(rel): """Fires if the machine is running Fedora.""" if "Fedora" in rel.product: return make_pass("IS_FEDORA", product=rel.product) else: return make_fail("IS_NOT_FEDORA", product=rel.product)
def report(rel, hostname): """Fires if the machine is running Fedora.""" if "Fedora" in rel.product: return make_pass(ERROR_KEY_IS_FEDORA, hostname=hostname.hostname, product=rel.product) else: return make_fail(ERROR_KEY_IS_FEDORA, hostname=hostname.hostname, product=rel.product)
def report(hostname, release): if release and release.is_rhel: return make_pass(ERROR_KEY_1, hostname=hostname.fqdn, release=release.version) elif release: return make_fail(ERROR_KEY_2, hostname=hostname.fqdn, release=release.raw) else: return make_fail(ERROR_KEY_3, hostname=hostname.fqdn)
def integration_test(): input_data = InputData("no_bash_bug") input_data.add(Specs.installed_rpms, CURRENT_VERSION) expected = make_pass("BASH_BUG", bash=CURRENT_VERSION, found=NOT_FOUND) yield input_data, expected input_data = InputData("is_bash_bug") input_data.add(Specs.installed_rpms, BUG_VERSION) expected = make_fail("BASH_BUG", bash=BUG_VERSION, found=FOUND) yield input_data, expected
def integration_test(): input_data = InputData("test_fedora") input_data.add(Specs.redhat_release, FEDORA) input_data.add(Specs.hostname, TEST_HOSTNAME) expected = make_pass("IS_FEDORA", hostname=TEST_HOSTNAME, product="Fedora") yield input_data, expected input_data = InputData("test_rhel") input_data.add(Specs.redhat_release, RHEL) input_data.add(Specs.hostname, TEST_HOSTNAME) expected = make_fail("IS_NOT_FEDORA", hostname=TEST_HOSTNAME, product="Red Hat Enterprise Linux Server") yield input_data, expected
def test_rules_fixture(run_rule): input_data = [UNAME, RPMS] expected = make_pass('PASS', bash_ver='bash-4.1.23-6.fc29', uname_ver='2.6.32') results = run_rule('test_pass', rules_fixture_plugin.report, input_data) assert results == expected input_data = [RPMS] expected = make_fail('FAIL', bash_ver='bash-4.1.23-6.fc29', path=RPMS['path']) results = run_rule('test_fail_list', rules_fixture_plugin.report, input_data) assert results == expected input_data = RPMS expected = make_fail('FAIL', bash_ver='bash-4.1.23-6.fc29', path=RPMS['path']) results = run_rule('test_fail_dict', rules_fixture_plugin.report, input_data) assert results == expected input_data = [] expected = None results = run_rule('test_ret_none', rules_fixture_plugin.report, input_data) assert results == expected
def test_rules_fixture(run_rule): input_data = InputData('test_pass') input_data.add(UNAME['spec'], UNAME['data']) input_data.add(RPMS['spec'], RPMS['data'], path=RPMS['path']) expected = make_pass('PASS', bash_ver='bash-4.1.23-6.fc29', uname_ver='2.6.32') results = run_rule(rules_fixture_plugin.report, input_data) assert results == expected input_data = InputData('test_fail') input_data.add(RPMS['spec'], RPMS['data'], path=RPMS['path']) expected = make_fail('FAIL', bash_ver='bash-4.1.23-6.fc29', path=RPMS['path']) results = run_rule(rules_fixture_plugin.report, input_data) assert results == expected input_data = InputData('test_ret_none') results = run_rule(rules_fixture_plugin.report, input_data) assert results is None
def test_always_fires(): i = InputData() expected = make_pass("ALWAYS_FIRES", kernel="this is junk") run_test(always_fires.report, i, expected)
def report(rpms): bash_ver = rpms.get_max('bash') return make_pass(KEY, bash_version=bash_ver)