summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Chauvat <nicolas.chauvat@logilab.fr>2013-05-21 16:20:49 +0200
committerNicolas Chauvat <nicolas.chauvat@logilab.fr>2013-05-21 16:20:49 +0200
commit55b532fef016a9aab9a2050129548407449deaa0 (patch)
tree54f2a6bf99a4e0e664ad6c67e455ac42dffa0a3e
parent8fbf288039fe17d919ea576a1d7f90cd7717d1fc (diff)
downloadlogilab-common-55b532fef016a9aab9a2050129548407449deaa0.tar.gz
[configuration] add test case for merge_options()
-rw-r--r--test/unittest_configuration.py22
1 files changed, 21 insertions, 1 deletions
diff --git a/test/unittest_configuration.py b/test/unittest_configuration.py
index 7be31cf..ea163d1 100644
--- a/test/unittest_configuration.py
+++ b/test/unittest_configuration.py
@@ -25,7 +25,8 @@ from sys import version_info
from logilab.common.testlib import TestCase, unittest_main
from logilab.common.optik_ext import OptionValueError
from logilab.common.configuration import Configuration, \
- OptionsManagerMixIn, OptionsProviderMixIn, Method, read_old_config
+ OptionsManagerMixIn, OptionsProviderMixIn, Method, read_old_config, \
+ merge_options
DATA = join(dirname(abspath(__file__)), 'data')
@@ -329,6 +330,25 @@ class RegrTC(TestCase):
self.linter.load_command_line_configuration([])
self.assertEqual(self.linter.config.profile, False)
+class MergeTC(TestCase):
+
+ def test_merge1(self):
+ merged = merge_options([('dothis', {'type':'yn', 'action': 'store', 'default': True, 'metavar': '<y or n>'}),
+ ('dothis', {'type':'yn', 'action': 'store', 'default': False, 'metavar': '<y or n>'}),
+ ])
+ self.assertEqual(len(merged), 1)
+ self.assertEqual(merged[0][0], 'dothis')
+ self.assertEqual(merged[0][1]['default'], True)
+
+ def test_merge2(self):
+ merged = merge_options([('dothis', {'type':'yn', 'action': 'store', 'default': True, 'metavar': '<y or n>'}),
+ ('value', {'type': 'string', 'metavar': '<string>', 'short': 'v'}),
+ ('dothis', {'type':'yn', 'action': 'store', 'default': False, 'metavar': '<y or n>'}),
+ ])
+ self.assertEqual(len(merged), 2)
+ self.assertEqual(merged[0][0], 'value')
+ self.assertEqual(merged[1][0], 'dothis')
+ self.assertEqual(merged[1][1]['default'], True)
if __name__ == '__main__':
unittest_main()