def test_check_security_plugs_browser_support_daemon_override(self): ''' Test check_security_plugs() - browser-support w/ daemon override''' apps = {'app1': {'plugs': ['browser-support'], 'daemon': 'simple'}} self.set_test_snap_yaml("apps", apps) c = SnapReviewSecurity(self.test_name) # update the overrides with our snap from clickreviews.overrides import sec_browser_support_overrides sec_browser_support_overrides.append(self.test_snap_yaml["name"]) # run the test c.check_security_plugs_browser_support_with_daemon() # then cleanup the overrides sec_browser_support_overrides.remove(self.test_snap_yaml["name"]) report = c.click_report expected_counts = {'info': 1, 'warn': 0, 'error': 0} self.check_results(report, expected_counts) expected = dict() expected['error'] = dict() expected['warn'] = dict() expected['info'] = dict() name = 'security-snap-v2:daemon_with_browser-support:app1' expected['info'][name] = {"text": "OK (allowing 'daemon' with 'browser-support'"} self.check_results(report, expected=expected)
def test_check_security_plugs_browser_support_no_plugs(self): ''' Test check_security_plugs() - daemon without browser-support''' apps = {'app1': {'daemon': 'simple'}} self.set_test_snap_yaml("apps", apps) c = SnapReviewSecurity(self.test_name) c.check_security_plugs_browser_support_with_daemon() report = c.click_report expected_counts = {'info': 0, 'warn': 0, 'error': 0} self.check_results(report, expected_counts)
def test_check_security_plugs_browser_support_no_daemon_top_plugs2(self): ''' Test check_security_plugs() - no daemon with toplevel plugs, no interface''' plugs = {'browser-support': {}} self.set_test_snap_yaml("plugs", plugs) apps = {'app1': {}} self.set_test_snap_yaml("apps", apps) c = SnapReviewSecurity(self.test_name) c.check_security_plugs_browser_support_with_daemon() report = c.click_report expected_counts = {'info': 0, 'warn': 0, 'error': 0} self.check_results(report, expected_counts)
def test_check_security_plugs_browser_support_multiple(self): ''' Test check_security_plugs() - multiple apps''' plugs = {'browser': {'interface': 'browser-support'}} self.set_test_snap_yaml("plugs", plugs) apps = {'app1': {'plugs': ['browser']}, 'app2': {'daemon': 'simple'}} self.set_test_snap_yaml("apps", apps) c = SnapReviewSecurity(self.test_name) c.check_security_plugs_browser_support_with_daemon() report = c.click_report expected_counts = {'info': 0, 'warn': 0, 'error': 0} self.check_results(report, expected_counts)