def test_partial_def_1(self): c = cli.CLIConfigManager() c.user_defaults = {'foo': 'XX', 'foo2': 'YY'} p = self._setup_parser() config = vars(p.parse_args('--foo baz')) self.assertDictEqual(config, { 'foo': 'baz', 'foo2': 'YY', 'site': 'local' }) c.user_defaults = {'foo': 'XX'} p = self._setup_parser() config = vars(p.parse_args('--foo baz')) self.assertDictEqual(config, { 'foo': 'baz', 'foo2': 'bar', 'site': 'local' }) c.user_defaults = {'foo2': 'YY'} p = self._setup_parser() config = vars(p.parse_args('--foo baz')) self.assertDictEqual(config, { 'foo': 'baz', 'foo2': 'YY', 'site': 'local' })
def tearDown(self): # clear contents of Singleton try: c = cli.CLIConfigManager() c._reset() except: pass
def test_partial_def_3(self): c = cli.CLIConfigManager() p = _parser_from_dict({ "arguments": [ {"name": "foo"}, {"name": "foo2", "default": "bar"} ], }) c.defaults[cli.DefaultsFileTypes.USER] = {'foo': 'XX', 'foo2': 'YY'} c.defaults[cli.DefaultsFileTypes.SITE] = {'foo': 'XXQ', 'foo2': 'YYQ'} config = vars(p.parse_args('--foo baz')) self.assertDictEqual(config, {'foo':'baz', 'foo2': 'YY','site':'local'}) c.defaults[cli.DefaultsFileTypes.USER] = {'foo': 'XX', 'foo2': 'YY'} c.defaults[cli.DefaultsFileTypes.SITE] = {'foo': 'XXQ', 'foo2': 'YYQ'} config = vars(p.parse_args('--foo2 baz')) self.assertDictEqual(config, {'foo':'XX', 'foo2': 'baz','site':'local'}) c.defaults[cli.DefaultsFileTypes.USER] = {'foo': 'XX'} c.defaults[cli.DefaultsFileTypes.SITE] = {'foo': 'XXQ', 'foo2': 'YYQ'} config = vars(p.parse_args('--foo baz')) self.assertDictEqual(config, {'foo':'baz', 'foo2': 'YYQ','site':'local'}) c.defaults[cli.DefaultsFileTypes.USER] = {'foo2': 'YY'} c.defaults[cli.DefaultsFileTypes.SITE] = {'foo': 'XXQ', 'foo2': 'YYQ'} config = vars(p.parse_args('--foo2 baz')) self.assertDictEqual(config, {'foo':'XXQ', 'foo2': 'baz','site':'local'})
def test_no_partial_def(self): c = cli.CLIConfigManager() p = _parser_from_dict({ "arguments": [ {"name": "foo"}, {"name": "foo2", "default": "bar"} ], }) config = vars(p.parse_args('--foo baz')) self.assertDictEqual(config, {'foo':'baz', 'foo2': 'bar', 'site': 'local'}) config = vars(p.parse_args('--foo2 baz')) self.assertDictEqual(config, {'foo':None, 'foo2': 'baz','site':'local'})
def test_no_partial_def(self): c = cli.CLIConfigManager() p = self._setup_parser() config = vars(p.parse_args('--foo baz')) self.assertDictEqual(config, { 'foo': 'baz', 'foo2': 'bar', 'site': 'local' }) config = vars(p.parse_args('--foo2 baz')) self.assertDictEqual(config, { 'foo': None, 'foo2': 'baz', 'site': 'local' })
def tearDown(self): try: temp = cli.CLIConfigManager() temp._reset() except Exception: pass
def setUp(self): _ = cli.CLIConfigManager('dummy/test/path', skip_defaults=True)