##// END OF EJS Templates
don't stop parsing on unrecognized args...
MinRK -
Show More
@@ -434,6 +434,8 b' class KeyValueConfigLoader(CommandLineConfigLoader):'
434 434
435 435 if raw == '--':
436 436 # don't parse arguments after '--'
437 # this is useful for relaying arguments to scripts, e.g.
438 # ipython -i foo.py --pylab=qt -- args after '--' go-to-foo.py
437 439 self.extra_args.extend(uargv[idx+1:])
438 440 break
439 441
@@ -476,9 +478,7 b' class KeyValueConfigLoader(CommandLineConfigLoader):'
476 478 else:
477 479 # keep all args that aren't valid in a list,
478 480 # in case our parent knows what to do with them.
479 # self.extra_args.append(item)
480 self.extra_args.extend(uargv[idx:])
481 break
481 self.extra_args.append(item)
482 482 return self.config
483 483
484 484 class ArgParseConfigLoader(CommandLineConfigLoader):
@@ -128,8 +128,14 b' class TestApplication(TestCase):'
128 128 app = MyApp()
129 129 app.parse_command_line(["--Bar.b=5", 'extra', "--disable", 'args'])
130 130 app.init_bar()
131 self.assertEquals(app.bar.enabled, False)
132 self.assertEquals(app.bar.b, 5)
133 self.assertEquals(app.extra_args, ['extra', 'args'])
134 app = MyApp()
135 app.parse_command_line(["--Bar.b=5", '--', 'extra', "--disable", 'args'])
136 app.init_bar()
131 137 self.assertEquals(app.bar.enabled, True)
132 138 self.assertEquals(app.bar.b, 5)
133 self.assertEquals(app.extra_args, ['extra', "--disable", 'args'])
139 self.assertEquals(app.extra_args, ['extra', '--disable', 'args'])
134 140
135 141
@@ -130,9 +130,9 b' class TestKeyValueCL(TestCase):'
130 130 def test_extra_args(self):
131 131 cl = KeyValueConfigLoader()
132 132 config = cl.load_config(['--a=5', 'b', '--c=10', 'd'])
133 self.assertEquals(cl.extra_args, ['b', '--c=10' , 'd'])
133 self.assertEquals(cl.extra_args, ['b', 'd'])
134 134 self.assertEquals(config.a, 5)
135 self.assertRaises(AttributeError, getattr, config, 'c')
135 self.assertEquals(config.c, 10)
136 136 config = cl.load_config(['--', '--a=5', '--c=10'])
137 137 self.assertEquals(cl.extra_args, ['--a=5', '--c=10'])
138 138
General Comments 0
You need to be logged in to leave comments. Login now