From 55b532fef016a9aab9a2050129548407449deaa0 Mon Sep 17 00:00:00 2001 From: Nicolas Chauvat Date: Tue, 21 May 2013 16:20:49 +0200 Subject: [configuration] add test case for merge_options() --- test/unittest_configuration.py | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) 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': ''}), + ('dothis', {'type':'yn', 'action': 'store', 'default': False, 'metavar': ''}), + ]) + 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': ''}), + ('value', {'type': 'string', 'metavar': '', 'short': 'v'}), + ('dothis', {'type':'yn', 'action': 'store', 'default': False, 'metavar': ''}), + ]) + 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() -- cgit v1.2.1