From 065a7ea03d97943cd669948ebaabd5271bf2afef Mon Sep 17 00:00:00 2001 From: Mark McLoughlin Date: Tue, 15 Nov 2011 07:01:43 +0000 Subject: Fix multistring flags default handling (#890489) With its 'append' action, optparse appends values to the supplied default value. This leaves the user with no way of overriding the default value. If you want to support overriding, you need to manually handle setting the default value after parsing. gflags supports overriding the default value so we must do the same. Change-Id: I5810e16806e74876c7a310edbb6f8f27f0a3313b --- nova/tests/test_flags.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'nova/tests') diff --git a/nova/tests/test_flags.py b/nova/tests/test_flags.py index dab11c5e0..2865eef55 100644 --- a/nova/tests/test_flags.py +++ b/nova/tests/test_flags.py @@ -74,7 +74,11 @@ class FlagsTestCase(test.TestCase): self.assertEqual(self.FLAGS.float, 6.66) def test_define_multistring(self): - flags.DEFINE_multistring('multi', [], 'desc', flag_values=self.FLAGS) + flags.DEFINE_multistring('multi', ['blaa'], 'desc', + flag_values=self.FLAGS) + + self.assert_(self.FLAGS['multi']) + self.assertEqual(self.FLAGS.multi, ['blaa']) argv = ['flags_test', '--multi', 'foo', '--multi', 'bar'] self.FLAGS(argv) -- cgit