diff -Nru click-reviewers-tools-0.10/bin/clickreviews/cr_common.py click-reviewers-tools-0.10/bin/clickreviews/cr_common.py --- click-reviewers-tools-0.10/bin/clickreviews/cr_common.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/bin/clickreviews/cr_common.py 2014-09-10 21:01:45.000000000 +0000 @@ -222,7 +222,8 @@ # result_type: info, warn, error # review_name: name of the check (prefixed with self.review_type) # result: contents of the review - def _add_result(self, result_type, review_name, result, link=None): + def _add_result(self, result_type, review_name, result, link=None, + manual_review=False): '''Add result to report''' if result_type not in self.result_types: error("Invalid result type '%s'" % result_type) @@ -231,7 +232,10 @@ if name not in self.click_report[result_type]: self.click_report[result_type][name] = dict() - self.click_report[result_type][name]["text"] = result + self.click_report[result_type][name].update({ + 'text': result, + 'manual_review': manual_review, + }) if link is not None: self.click_report[result_type][name]["link"] = link diff -Nru click-reviewers-tools-0.10/bin/clickreviews/cr_lint.py click-reviewers-tools-0.10/bin/clickreviews/cr_lint.py --- click-reviewers-tools-0.10/bin/clickreviews/cr_lint.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/bin/clickreviews/cr_lint.py 2014-09-10 21:01:45.000000000 +0000 @@ -379,13 +379,15 @@ t = 'info' n = 'hooks_redflag_%s' % (app) s = "OK" + manual_review = False for hook in self.manifest['hooks'][app]: if hook in self.redflagged_hooks: found.append(hook) if len(found) > 0: t = 'error' s = "(MANUAL REVIEW) '%s' not allowed" % ", ".join(found) - self._add_result(t, n, s) + manual_review = True + self._add_result(t, n, s, manual_review=manual_review) def check_external_symlinks(self): '''Check if symlinks in the click package go out to the system.''' @@ -507,6 +509,7 @@ t = 'info' n = 'maintainer_domain' s = 'OK' + manual_review = False defaults = ('com.ubuntu.developer.', 'net.launchpad.') # Some domains give out email addresses in their toplevel namespace @@ -527,6 +530,7 @@ t = 'error' s = "(EMAIL NEEDS HUMAN REVIEW) email domain too short: '%s'" \ % self.email + manual_review = True # also '=' to leave room for app name elif len(domain_rev) >= len(pkg_domain_rev): # Core apps have a long email, domain, but that's all right @@ -539,9 +543,10 @@ s = "OK (email '%s' long, but special case" % self.email else: t = 'error' - s = "(EMAIL NEEDS HUMAN REVIEW) email domain too " \ - "long '%s' " % self.email + "for app name '%s'" % \ - ".".join(pkg_domain_rev) + s = ("(EMAIL NEEDS HUMAN REVIEW) email domain too long " + "'%s' for app name '%s'" % (self.email, + ".".join(pkg_domain_rev))) + manual_review = True elif domain_rev == pkg_domain_rev[:len(domain_rev)]: is_special = False for special in special_domains: @@ -564,7 +569,7 @@ "(Your email domain needs to match the reverse package " \ "namespace.)" % (self.email, ".".join(pkg_domain_rev)) - self._add_result(t, n, s) + self._add_result(t, n, s, manual_review=manual_review) def check_title(self): '''Check title()''' diff -Nru click-reviewers-tools-0.10/bin/clickreviews/cr_online_accounts.py click-reviewers-tools-0.10/bin/clickreviews/cr_online_accounts.py --- click-reviewers-tools-0.10/bin/clickreviews/cr_online_accounts.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/bin/clickreviews/cr_online_accounts.py 2014-09-10 21:01:45.000000000 +0000 @@ -181,6 +181,7 @@ t = 'info' n = '%s_%s' % (app, account_type) s = "OK" + manual_review = False if account_type not in self.accounts[app]: s = "OK (missing)" self._add_result(t, n, s) @@ -188,7 +189,8 @@ else: t = 'error' s = "(MANUAL REVIEW) '%s' not allowed" % account_type - self._add_result(t, n, s) + manual_review = True + self._add_result(t, n, s, manual_review=manual_review) t = 'info' n = '%s_%s_root' % (app, account_type) @@ -221,6 +223,7 @@ t = 'info' n = '%s_%s' % (app, account_type) s = "OK" + manual_review = False if account_type not in self.accounts[app]: s = "OK (missing)" self._add_result(t, n, s) @@ -228,4 +231,5 @@ else: t = 'error' s = "(MANUAL REVIEW) '%s' not allowed" % account_type - self._add_result(t, n, s) + manual_review = True + self._add_result(t, n, s, manual_review=manual_review) diff -Nru click-reviewers-tools-0.10/bin/clickreviews/cr_security.py click-reviewers-tools-0.10/bin/clickreviews/cr_security.py --- click-reviewers-tools-0.10/bin/clickreviews/cr_security.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/bin/clickreviews/cr_security.py 2014-09-10 21:01:45.000000000 +0000 @@ -290,6 +290,7 @@ t = 'info' n = 'template_valid (%s)' % f s = "OK" + manual_review = False if 'template' not in m: # If template not specified, we just use the default self._add_result(t, n, 'OK (none specified)') @@ -297,10 +298,11 @@ elif m['template'] in self.redflag_templates: t = 'error' s = "(MANUAL REVIEW) '%s' not allowed" % m['template'] + manual_review = True elif m['template'] in self.extraneous_templates: t = 'warn' s = "No need to specify '%s' template" % m['template'] - self._add_result(t, n, s) + self._add_result(t, n, s, manual_review=manual_review) t = 'info' n = 'template_exists (%s)' % f @@ -504,6 +506,7 @@ t = 'info' n = 'policy_groups_safe_%s (%s)' % (app, i) s = 'OK' + manual_review = False aa_type = self._get_policy_group_type(vendor, version, i) if i == "debug": @@ -514,11 +517,12 @@ t = 'error' s = "(MANUAL REVIEW) %s policy group " % aa_type + \ "'%s': vetted applications only" % (i) + manual_review = True elif aa_type != "common": t = 'error' s = "policy group '%s' has" % i + \ "unknown type '%s'" % (aa_type) - self._add_result(t, n, s) + self._add_result(t, n, s, manual_review=manual_review) def check_ignored(self): '''Check ignored fields''' diff -Nru click-reviewers-tools-0.10/bin/clickreviews/cr_tests.py click-reviewers-tools-0.10/bin/clickreviews/cr_tests.py --- click-reviewers-tools-0.10/bin/clickreviews/cr_tests.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/bin/clickreviews/cr_tests.py 2014-09-10 21:01:45.000000000 +0000 @@ -512,6 +512,11 @@ "(%s not equal)\n%s" % (k, json.dumps(report, indent=2))) + def check_manual_review(self, report, check_name, + result_type='error', manual_review=True): + result = report[result_type][check_name] + self.assertEqual(result['manual_review'], manual_review) + def set_test_control(self, key, value): '''Set key in DEBIAN/control to value. If value is None, remove key''' if value is None: diff -Nru click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_common.py click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_common.py --- click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_common.py 1970-01-01 00:00:00.000000000 +0000 +++ click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_common.py 2014-09-10 21:01:45.000000000 +0000 @@ -0,0 +1,39 @@ +from clickreviews.cr_common import ClickReview +from clickreviews import cr_tests + + +class ClickReviewTestCase(cr_tests.TestClickReview): + + def setUp(self): + # Monkey patch various file access classes. stop() is handled with + # addCleanup in super() + cr_tests.mock_patch() + super() + self.review = ClickReview('app.click', 'review_type') + + def test_add_result_default_manual_review(self): + self.review._add_result('info', 'some-check', 'OK') + self.assertEqual(self.review.click_report, { + 'info': { + 'review_type_some-check': { + 'text': 'OK', + 'manual_review': False, + } + }, + 'warn': {}, + 'error': {}, + }) + + def test_add_result_custom_manual_review(self): + self.review._add_result('info', 'some-check', 'OK', + manual_review=True) + self.assertEqual(self.review.click_report, { + 'info': { + 'review_type_some-check': { + 'text': 'OK', + 'manual_review': True, + } + }, + 'warn': {}, + 'error': {}, + }) diff -Nru click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_lint.py click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_lint.py --- click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_lint.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_lint.py 2014-09-10 21:01:45.000000000 +0000 @@ -471,6 +471,7 @@ r = c.click_report expected_counts = {'info': None, 'warn': 0, 'error': 1} self.check_results(r, expected_counts) + self.check_manual_review(r, 'lint_maintainer_domain') def test_check_maintainer_bad_email_long_domain(self): '''Test check_maintainer() - bad email (long domain)''' @@ -482,6 +483,7 @@ r = c.click_report expected_counts = {'info': None, 'warn': 0, 'error': 1} self.check_results(r, expected_counts) + self.check_manual_review(r, 'lint_maintainer_domain') def test_check_maintainer_domain_appstore(self): '''Test check_maintainer() - appstore domain @@ -758,3 +760,4 @@ r = c.click_report expected_counts = {'info': None, 'warn': 0, 'error': 1} self.check_results(r, expected_counts) + self.check_manual_review(r, 'lint_hooks_redflag_test-app') diff -Nru click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_online_accounts.py click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_online_accounts.py --- click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_online_accounts.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_online_accounts.py 2014-09-10 21:01:45.000000000 +0000 @@ -267,6 +267,8 @@ # provider prompts manual review, so for now, need to have error as 1 expected_counts = {'info': 2, 'warn': 0, 'error': 1} self.check_results(r, expected_counts) + check_name = "%s_%s_account-provider" % (c.review_type, self.default_appname) + self.check_manual_review(r, check_name) def test_check_provider_not_specified(self): '''Test check_provider() - no specified''' @@ -286,6 +288,8 @@ # provider prompts manual review, so for now, need to have error as +1 expected_counts = {'info': None, 'warn': 0, 'error': 2} self.check_results(r, expected_counts) + check_name = "%s_%s_account-provider" % (c.review_type, self.default_appname) + self.check_manual_review(r, check_name) def test_check_provider_wrong_id(self): '''Test check_provider() - wrong id''' @@ -297,6 +301,8 @@ # provider prompts manual review, so for now, need to have error as +1 expected_counts = {'info': None, 'warn': 0, 'error': 2} self.check_results(r, expected_counts) + check_name = "%s_%s_account-provider" % (c.review_type, self.default_appname) + self.check_manual_review(r, check_name) def test_check_qml_plugin(self): '''Test check_qml_plugin()''' @@ -307,6 +313,8 @@ # provider prompts manual review, so for now, need to have error as 1 expected_counts = {'info': 0, 'warn': 0, 'error': 1} self.check_results(r, expected_counts) + check_name = "%s_%s_account-qml-plugin" % (c.review_type, self.default_appname) + self.check_manual_review(r, check_name) def test_check_qml_plugin_not_specified(self): '''Test check_qml_plugin() - no specified''' diff -Nru click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_security.py click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_security.py --- click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_security.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/bin/clickreviews/tests/test_cr_security.py 2014-09-10 21:01:45.000000000 +0000 @@ -286,6 +286,8 @@ report = c.click_report expected_counts = {'info': 2, 'warn': 0, 'error': 1} self.check_results(report, expected_counts) + check_name = "security_template_valid (%s.json)" % self.default_appname + self.check_manual_review(report, check_name) def test_check_policy_groups_webapps(self): '''Test check_policy_groups_webapps()''' @@ -577,6 +579,9 @@ report = c.click_report expected_counts = {'info': None, 'warn': 0, 'error': 1} self.check_results(report, expected_counts) + check_name = "security_policy_groups_safe_%s (video_files)" % ( + self.default_appname,) + self.check_manual_review(report, check_name) def test_check_policy_groups_debug(self): '''Test check_policy_groups() - debug''' diff -Nru click-reviewers-tools-0.10/clickreviews/cr_common.py click-reviewers-tools-0.10/clickreviews/cr_common.py --- click-reviewers-tools-0.10/clickreviews/cr_common.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/clickreviews/cr_common.py 2014-09-10 21:01:45.000000000 +0000 @@ -222,7 +222,8 @@ # result_type: info, warn, error # review_name: name of the check (prefixed with self.review_type) # result: contents of the review - def _add_result(self, result_type, review_name, result, link=None): + def _add_result(self, result_type, review_name, result, link=None, + manual_review=False): '''Add result to report''' if result_type not in self.result_types: error("Invalid result type '%s'" % result_type) @@ -231,7 +232,10 @@ if name not in self.click_report[result_type]: self.click_report[result_type][name] = dict() - self.click_report[result_type][name]["text"] = result + self.click_report[result_type][name].update({ + 'text': result, + 'manual_review': manual_review, + }) if link is not None: self.click_report[result_type][name]["link"] = link diff -Nru click-reviewers-tools-0.10/clickreviews/cr_lint.py click-reviewers-tools-0.10/clickreviews/cr_lint.py --- click-reviewers-tools-0.10/clickreviews/cr_lint.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/clickreviews/cr_lint.py 2014-09-10 21:01:45.000000000 +0000 @@ -379,13 +379,15 @@ t = 'info' n = 'hooks_redflag_%s' % (app) s = "OK" + manual_review = False for hook in self.manifest['hooks'][app]: if hook in self.redflagged_hooks: found.append(hook) if len(found) > 0: t = 'error' s = "(MANUAL REVIEW) '%s' not allowed" % ", ".join(found) - self._add_result(t, n, s) + manual_review = True + self._add_result(t, n, s, manual_review=manual_review) def check_external_symlinks(self): '''Check if symlinks in the click package go out to the system.''' @@ -507,6 +509,7 @@ t = 'info' n = 'maintainer_domain' s = 'OK' + manual_review = False defaults = ('com.ubuntu.developer.', 'net.launchpad.') # Some domains give out email addresses in their toplevel namespace @@ -527,6 +530,7 @@ t = 'error' s = "(EMAIL NEEDS HUMAN REVIEW) email domain too short: '%s'" \ % self.email + manual_review = True # also '=' to leave room for app name elif len(domain_rev) >= len(pkg_domain_rev): # Core apps have a long email, domain, but that's all right @@ -539,9 +543,10 @@ s = "OK (email '%s' long, but special case" % self.email else: t = 'error' - s = "(EMAIL NEEDS HUMAN REVIEW) email domain too " \ - "long '%s' " % self.email + "for app name '%s'" % \ - ".".join(pkg_domain_rev) + s = ("(EMAIL NEEDS HUMAN REVIEW) email domain too long " + "'%s' for app name '%s'" % (self.email, + ".".join(pkg_domain_rev))) + manual_review = True elif domain_rev == pkg_domain_rev[:len(domain_rev)]: is_special = False for special in special_domains: @@ -564,7 +569,7 @@ "(Your email domain needs to match the reverse package " \ "namespace.)" % (self.email, ".".join(pkg_domain_rev)) - self._add_result(t, n, s) + self._add_result(t, n, s, manual_review=manual_review) def check_title(self): '''Check title()''' diff -Nru click-reviewers-tools-0.10/clickreviews/cr_online_accounts.py click-reviewers-tools-0.10/clickreviews/cr_online_accounts.py --- click-reviewers-tools-0.10/clickreviews/cr_online_accounts.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/clickreviews/cr_online_accounts.py 2014-09-10 21:01:45.000000000 +0000 @@ -181,6 +181,7 @@ t = 'info' n = '%s_%s' % (app, account_type) s = "OK" + manual_review = False if account_type not in self.accounts[app]: s = "OK (missing)" self._add_result(t, n, s) @@ -188,7 +189,8 @@ else: t = 'error' s = "(MANUAL REVIEW) '%s' not allowed" % account_type - self._add_result(t, n, s) + manual_review = True + self._add_result(t, n, s, manual_review=manual_review) t = 'info' n = '%s_%s_root' % (app, account_type) @@ -221,6 +223,7 @@ t = 'info' n = '%s_%s' % (app, account_type) s = "OK" + manual_review = False if account_type not in self.accounts[app]: s = "OK (missing)" self._add_result(t, n, s) @@ -228,4 +231,5 @@ else: t = 'error' s = "(MANUAL REVIEW) '%s' not allowed" % account_type - self._add_result(t, n, s) + manual_review = True + self._add_result(t, n, s, manual_review=manual_review) diff -Nru click-reviewers-tools-0.10/clickreviews/cr_security.py click-reviewers-tools-0.10/clickreviews/cr_security.py --- click-reviewers-tools-0.10/clickreviews/cr_security.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/clickreviews/cr_security.py 2014-09-10 21:01:45.000000000 +0000 @@ -290,6 +290,7 @@ t = 'info' n = 'template_valid (%s)' % f s = "OK" + manual_review = False if 'template' not in m: # If template not specified, we just use the default self._add_result(t, n, 'OK (none specified)') @@ -297,10 +298,11 @@ elif m['template'] in self.redflag_templates: t = 'error' s = "(MANUAL REVIEW) '%s' not allowed" % m['template'] + manual_review = True elif m['template'] in self.extraneous_templates: t = 'warn' s = "No need to specify '%s' template" % m['template'] - self._add_result(t, n, s) + self._add_result(t, n, s, manual_review=manual_review) t = 'info' n = 'template_exists (%s)' % f @@ -504,6 +506,7 @@ t = 'info' n = 'policy_groups_safe_%s (%s)' % (app, i) s = 'OK' + manual_review = False aa_type = self._get_policy_group_type(vendor, version, i) if i == "debug": @@ -514,11 +517,12 @@ t = 'error' s = "(MANUAL REVIEW) %s policy group " % aa_type + \ "'%s': vetted applications only" % (i) + manual_review = True elif aa_type != "common": t = 'error' s = "policy group '%s' has" % i + \ "unknown type '%s'" % (aa_type) - self._add_result(t, n, s) + self._add_result(t, n, s, manual_review=manual_review) def check_ignored(self): '''Check ignored fields''' diff -Nru click-reviewers-tools-0.10/clickreviews/cr_tests.py click-reviewers-tools-0.10/clickreviews/cr_tests.py --- click-reviewers-tools-0.10/clickreviews/cr_tests.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/clickreviews/cr_tests.py 2014-09-10 21:01:45.000000000 +0000 @@ -512,6 +512,11 @@ "(%s not equal)\n%s" % (k, json.dumps(report, indent=2))) + def check_manual_review(self, report, check_name, + result_type='error', manual_review=True): + result = report[result_type][check_name] + self.assertEqual(result['manual_review'], manual_review) + def set_test_control(self, key, value): '''Set key in DEBIAN/control to value. If value is None, remove key''' if value is None: diff -Nru click-reviewers-tools-0.10/clickreviews/tests/test_cr_common.py click-reviewers-tools-0.10/clickreviews/tests/test_cr_common.py --- click-reviewers-tools-0.10/clickreviews/tests/test_cr_common.py 1970-01-01 00:00:00.000000000 +0000 +++ click-reviewers-tools-0.10/clickreviews/tests/test_cr_common.py 2014-09-10 21:01:45.000000000 +0000 @@ -0,0 +1,39 @@ +from clickreviews.cr_common import ClickReview +from clickreviews import cr_tests + + +class ClickReviewTestCase(cr_tests.TestClickReview): + + def setUp(self): + # Monkey patch various file access classes. stop() is handled with + # addCleanup in super() + cr_tests.mock_patch() + super() + self.review = ClickReview('app.click', 'review_type') + + def test_add_result_default_manual_review(self): + self.review._add_result('info', 'some-check', 'OK') + self.assertEqual(self.review.click_report, { + 'info': { + 'review_type_some-check': { + 'text': 'OK', + 'manual_review': False, + } + }, + 'warn': {}, + 'error': {}, + }) + + def test_add_result_custom_manual_review(self): + self.review._add_result('info', 'some-check', 'OK', + manual_review=True) + self.assertEqual(self.review.click_report, { + 'info': { + 'review_type_some-check': { + 'text': 'OK', + 'manual_review': True, + } + }, + 'warn': {}, + 'error': {}, + }) diff -Nru click-reviewers-tools-0.10/clickreviews/tests/test_cr_lint.py click-reviewers-tools-0.10/clickreviews/tests/test_cr_lint.py --- click-reviewers-tools-0.10/clickreviews/tests/test_cr_lint.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/clickreviews/tests/test_cr_lint.py 2014-09-10 21:01:45.000000000 +0000 @@ -471,6 +471,7 @@ r = c.click_report expected_counts = {'info': None, 'warn': 0, 'error': 1} self.check_results(r, expected_counts) + self.check_manual_review(r, 'lint_maintainer_domain') def test_check_maintainer_bad_email_long_domain(self): '''Test check_maintainer() - bad email (long domain)''' @@ -482,6 +483,7 @@ r = c.click_report expected_counts = {'info': None, 'warn': 0, 'error': 1} self.check_results(r, expected_counts) + self.check_manual_review(r, 'lint_maintainer_domain') def test_check_maintainer_domain_appstore(self): '''Test check_maintainer() - appstore domain @@ -758,3 +760,4 @@ r = c.click_report expected_counts = {'info': None, 'warn': 0, 'error': 1} self.check_results(r, expected_counts) + self.check_manual_review(r, 'lint_hooks_redflag_test-app') diff -Nru click-reviewers-tools-0.10/clickreviews/tests/test_cr_online_accounts.py click-reviewers-tools-0.10/clickreviews/tests/test_cr_online_accounts.py --- click-reviewers-tools-0.10/clickreviews/tests/test_cr_online_accounts.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/clickreviews/tests/test_cr_online_accounts.py 2014-09-10 21:01:45.000000000 +0000 @@ -267,6 +267,8 @@ # provider prompts manual review, so for now, need to have error as 1 expected_counts = {'info': 2, 'warn': 0, 'error': 1} self.check_results(r, expected_counts) + check_name = "%s_%s_account-provider" % (c.review_type, self.default_appname) + self.check_manual_review(r, check_name) def test_check_provider_not_specified(self): '''Test check_provider() - no specified''' @@ -286,6 +288,8 @@ # provider prompts manual review, so for now, need to have error as +1 expected_counts = {'info': None, 'warn': 0, 'error': 2} self.check_results(r, expected_counts) + check_name = "%s_%s_account-provider" % (c.review_type, self.default_appname) + self.check_manual_review(r, check_name) def test_check_provider_wrong_id(self): '''Test check_provider() - wrong id''' @@ -297,6 +301,8 @@ # provider prompts manual review, so for now, need to have error as +1 expected_counts = {'info': None, 'warn': 0, 'error': 2} self.check_results(r, expected_counts) + check_name = "%s_%s_account-provider" % (c.review_type, self.default_appname) + self.check_manual_review(r, check_name) def test_check_qml_plugin(self): '''Test check_qml_plugin()''' @@ -307,6 +313,8 @@ # provider prompts manual review, so for now, need to have error as 1 expected_counts = {'info': 0, 'warn': 0, 'error': 1} self.check_results(r, expected_counts) + check_name = "%s_%s_account-qml-plugin" % (c.review_type, self.default_appname) + self.check_manual_review(r, check_name) def test_check_qml_plugin_not_specified(self): '''Test check_qml_plugin() - no specified''' diff -Nru click-reviewers-tools-0.10/clickreviews/tests/test_cr_security.py click-reviewers-tools-0.10/clickreviews/tests/test_cr_security.py --- click-reviewers-tools-0.10/clickreviews/tests/test_cr_security.py 2014-09-05 13:02:08.000000000 +0000 +++ click-reviewers-tools-0.10/clickreviews/tests/test_cr_security.py 2014-09-10 21:01:45.000000000 +0000 @@ -286,6 +286,8 @@ report = c.click_report expected_counts = {'info': 2, 'warn': 0, 'error': 1} self.check_results(report, expected_counts) + check_name = "security_template_valid (%s.json)" % self.default_appname + self.check_manual_review(report, check_name) def test_check_policy_groups_webapps(self): '''Test check_policy_groups_webapps()''' @@ -577,6 +579,9 @@ report = c.click_report expected_counts = {'info': None, 'warn': 0, 'error': 1} self.check_results(report, expected_counts) + check_name = "security_policy_groups_safe_%s (video_files)" % ( + self.default_appname,) + self.check_manual_review(report, check_name) def test_check_policy_groups_debug(self): '''Test check_policy_groups() - debug''' diff -Nru click-reviewers-tools-0.10/debian/bzr-builder.manifest click-reviewers-tools-0.10/debian/bzr-builder.manifest --- click-reviewers-tools-0.10/debian/bzr-builder.manifest 2014-09-05 13:02:09.000000000 +0000 +++ click-reviewers-tools-0.10/debian/bzr-builder.manifest 2014-09-10 21:01:46.000000000 +0000 @@ -1,2 +1,2 @@ -# bzr-builder format 0.3 deb-version {debupstream}-0~238 -lp:click-reviewers-tools revid:jamie@ubuntu.com-20140904154604-gv34v50h0751a3nx +# bzr-builder format 0.3 deb-version {debupstream}-0~239 +lp:click-reviewers-tools revid:jamie@ubuntu.com-20140910204945-7s50bj2md73xtl0e diff -Nru click-reviewers-tools-0.10/debian/changelog click-reviewers-tools-0.10/debian/changelog --- click-reviewers-tools-0.10/debian/changelog 2014-09-05 13:02:09.000000000 +0000 +++ click-reviewers-tools-0.10/debian/changelog 2014-09-10 21:01:46.000000000 +0000 @@ -1,8 +1,8 @@ -click-reviewers-tools (0.10-0~238~ubuntu14.04.1) trusty; urgency=low +click-reviewers-tools (0.10-0~239~ubuntu14.04.1) trusty; urgency=low * Auto build. - -- Daniel Holbach Fri, 05 Sep 2014 13:02:09 +0000 + -- Daniel Holbach Wed, 10 Sep 2014 21:01:46 +0000 click-reviewers-tools (0.10) UNRELEASED; urgency=medium