Only suggest donations sometimes

This commit is contained in:
Brad Warren
2016-01-29 18:14:53 -08:00
parent 29bed26aa1
commit f9ac25cd7e
2 changed files with 17 additions and 16 deletions
+11 -10
View File
@@ -374,13 +374,15 @@ def _report_new_cert(cert_path, fullchain_path):
.format(and_chain, path, expiry)) .format(and_chain, path, expiry))
reporter_util.add_message(msg, reporter_util.MEDIUM_PRIORITY) reporter_util.add_message(msg, reporter_util.MEDIUM_PRIORITY)
def _suggest_donate():
"Suggest a donation to support Let's Encrypt" def _suggest_donation_if_appropriate(config):
reporter_util = zope.component.getUtility(interfaces.IReporter) """Potentially suggest a donation to support Let's Encrypt."""
msg = ("If you like Let's Encrypt, please consider supporting our work by:\n\n" if not config.staging: # --dry-run implies --staging
"Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate\n" reporter_util = zope.component.getUtility(interfaces.IReporter)
"Donating to EFF: https://eff.org/donate-le\n\n") msg = ("If you like Let's Encrypt, please consider supporting our work by:\n\n"
reporter_util.add_message(msg, reporter_util.LOW_PRIORITY) "Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate\n"
"Donating to EFF: https://eff.org/donate-le\n\n")
reporter_util.add_message(msg, reporter_util.LOW_PRIORITY)
def _report_successful_dry_run(): def _report_successful_dry_run():
@@ -620,7 +622,7 @@ def run(args, config, plugins): # pylint: disable=too-many-branches,too-many-lo
else: else:
display_ops.success_renewal(domains, action) display_ops.success_renewal(domains, action)
_suggest_donate() _suggest_donation_if_appropriate(config)
def obtain_cert(args, config, plugins): def obtain_cert(args, config, plugins):
@@ -656,8 +658,7 @@ def obtain_cert(args, config, plugins):
if args.dry_run: if args.dry_run:
_report_successful_dry_run() _report_successful_dry_run()
else: _suggest_donation_if_appropriate(config)
_suggest_donate()
def install(args, config, plugins): def install(args, config, plugins):
+6 -6
View File
@@ -50,7 +50,7 @@ class CLITest(unittest.TestCase): # pylint: disable=too-many-public-methods
def _call(self, args): def _call(self, args):
"Run the cli with output streams and actual client mocked out" "Run the cli with output streams and actual client mocked out"
with mock.patch('letsencrypt.cli._suggest_donate'): with mock.patch('letsencrypt.cli._suggest_donation_if_appropriate'):
with mock.patch('letsencrypt.cli.client') as client: with mock.patch('letsencrypt.cli.client') as client:
ret, stdout, stderr = self._call_no_clientmock(args) ret, stdout, stderr = self._call_no_clientmock(args)
return ret, stdout, stderr, client return ret, stdout, stderr, client
@@ -58,7 +58,7 @@ class CLITest(unittest.TestCase): # pylint: disable=too-many-public-methods
def _call_no_clientmock(self, args): def _call_no_clientmock(self, args):
"Run the client with output streams mocked out" "Run the client with output streams mocked out"
args = self.standard_args + args args = self.standard_args + args
with mock.patch('letsencrypt.cli._suggest_donate'): with mock.patch('letsencrypt.cli._suggest_donation_if_appropriate'):
with mock.patch('letsencrypt.cli.sys.stdout') as stdout: with mock.patch('letsencrypt.cli.sys.stdout') as stdout:
with mock.patch('letsencrypt.cli.sys.stderr') as stderr: with mock.patch('letsencrypt.cli.sys.stderr') as stderr:
ret = cli.main(args[:]) # NOTE: parser can alter its args! ret = cli.main(args[:]) # NOTE: parser can alter its args!
@@ -70,7 +70,7 @@ class CLITest(unittest.TestCase): # pylint: disable=too-many-public-methods
caller. caller.
""" """
args = self.standard_args + args args = self.standard_args + args
with mock.patch('letsencrypt.cli._suggest_donate'): with mock.patch('letsencrypt.cli._suggest_donation_if_appropriate'):
with mock.patch('letsencrypt.cli.sys.stderr') as stderr: with mock.patch('letsencrypt.cli.sys.stderr') as stderr:
with mock.patch('letsencrypt.cli.client') as client: with mock.patch('letsencrypt.cli.client') as client:
ret = cli.main(args[:]) # NOTE: parser can alter its args! ret = cli.main(args[:]) # NOTE: parser can alter its args!
@@ -463,7 +463,7 @@ class CLITest(unittest.TestCase): # pylint: disable=too-many-public-methods
self.assertTrue( self.assertTrue(
'dry run' in mock_get_utility().add_message.call_args[0][0]) 'dry run' in mock_get_utility().add_message.call_args[0][0])
@mock.patch('letsencrypt.cli._suggest_donate') @mock.patch('letsencrypt.cli._suggest_donation_if_appropriate')
@mock.patch('letsencrypt.crypto_util.notAfter') @mock.patch('letsencrypt.crypto_util.notAfter')
@mock.patch('letsencrypt.cli.zope.component.getUtility') @mock.patch('letsencrypt.cli.zope.component.getUtility')
def test_certonly_new_request_success(self, mock_get_utility, mock_notAfter, _suggest): def test_certonly_new_request_success(self, mock_get_utility, mock_notAfter, _suggest):
@@ -488,7 +488,7 @@ class CLITest(unittest.TestCase): # pylint: disable=too-many-public-methods
self.assertRaises(errors.Error, self.assertRaises(errors.Error,
self._certonly_new_request_common, mock_client) self._certonly_new_request_common, mock_client)
@mock.patch('letsencrypt.cli._suggest_donate') @mock.patch('letsencrypt.cli._suggest_donation_if_appropriate')
@mock.patch('letsencrypt.cli.zope.component.getUtility') @mock.patch('letsencrypt.cli.zope.component.getUtility')
@mock.patch('letsencrypt.cli._treat_as_renewal') @mock.patch('letsencrypt.cli._treat_as_renewal')
@mock.patch('letsencrypt.cli._init_le_client') @mock.patch('letsencrypt.cli._init_le_client')
@@ -514,7 +514,7 @@ class CLITest(unittest.TestCase): # pylint: disable=too-many-public-methods
self.assertTrue( self.assertTrue(
chain_path in mock_get_utility().add_message.call_args[0][0]) chain_path in mock_get_utility().add_message.call_args[0][0])
@mock.patch('letsencrypt.cli._suggest_donate') @mock.patch('letsencrypt.cli._suggest_donation_if_appropriate')
@mock.patch('letsencrypt.crypto_util.notAfter') @mock.patch('letsencrypt.crypto_util.notAfter')
@mock.patch('letsencrypt.cli.display_ops.pick_installer') @mock.patch('letsencrypt.cli.display_ops.pick_installer')
@mock.patch('letsencrypt.cli.zope.component.getUtility') @mock.patch('letsencrypt.cli.zope.component.getUtility')