1
0
mirror of https://github.com/certbot/certbot.git synced 2026-01-26 07:41:33 +03:00

support version 0.12.0 of configargparse

fixes #4648
This commit is contained in:
Ryan Pineo
2017-05-12 15:45:54 -04:00
parent f74845f437
commit 42d07d756d
2 changed files with 23 additions and 1 deletions

View File

@@ -6,6 +6,7 @@ import shutil
import stat
import unittest
import configargparse
import mock
import six
from six.moves import reload_module # pylint: disable=import-error
@@ -368,6 +369,22 @@ class AddDeprecatedArgumentTest(unittest.TestCase):
pass
self.assertTrue("--old-option" not in stdout.getvalue())
def test_when_configargparse_set(self):
'''In configargparse versions < 0.12.0 ACTION_TYPES_THAT_DONT_NEED_A_VALUE is a set.'''
orig = configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE
configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE = set()
self._call("--old-option", 1)
self.assertEqual(len(configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE), 1)
configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE = orig
def test_when_configargparse_tuple(self):
'''In configargparse versions >= 0.12.0 ACTION_TYPES_THAT_DONT_NEED_A_VALUE is a tuple.'''
orig = configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE
configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE = tuple()
self._call("--old-option", 1)
self.assertEqual(len(configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE), 1)
configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE = orig
class EnforceLeValidity(unittest.TestCase):
"""Test enforce_le_validity."""

View File

@@ -477,7 +477,12 @@ def add_deprecated_argument(add_argument, argument_name, nargs):
sys.stderr.write(
"Use of {0} is deprecated.\n".format(option_string))
configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE.add(ShowWarning)
# In version 0.12.0 ACTION_TYPES_THAT_DONT_NEED_A_VALUE was changed from a set
# to a tuple.
if isinstance(configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE, set):
configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE.add(ShowWarning)
else:
configargparse.ACTION_TYPES_THAT_DONT_NEED_A_VALUE += (ShowWarning,)
add_argument(argument_name, action=ShowWarning,
help=argparse.SUPPRESS, nargs=nargs)