diff options
author | Alexander Sulfrian <alexander.sulfrian@fu-berlin.de> | 2015-07-22 00:34:13 +0200 |
---|---|---|
committer | Alexander Sulfrian <alexander.sulfrian@fu-berlin.de> | 2015-07-22 00:40:02 +0200 |
commit | 2bbafa1499094a98a03fb5e84e5dff9b4b9a7aad (patch) | |
tree | 901d70ea19b5deed6d2a66d24ef0ae89886dd601 /testsuite/Testsrc/Testlib/TestOptions | |
parent | 61d90fbfd7397b8042b09b542a547b78d31851e0 (diff) | |
download | bcfg2-2bbafa1499094a98a03fb5e84e5dff9b4b9a7aad.tar.gz bcfg2-2bbafa1499094a98a03fb5e84e5dff9b4b9a7aad.tar.bz2 bcfg2-2bbafa1499094a98a03fb5e84e5dff9b4b9a7aad.zip |
Options: Add test to use config value for options from loaded components
Diffstat (limited to 'testsuite/Testsrc/Testlib/TestOptions')
-rw-r--r-- | testsuite/Testsrc/Testlib/TestOptions/TestComponents.py | 10 | ||||
-rw-r--r-- | testsuite/Testsrc/Testlib/TestOptions/Two.py | 3 |
2 files changed, 11 insertions, 2 deletions
diff --git a/testsuite/Testsrc/Testlib/TestOptions/TestComponents.py b/testsuite/Testsrc/Testlib/TestOptions/TestComponents.py index 61b87de2a..b1ed4cb2b 100644 --- a/testsuite/Testsrc/Testlib/TestOptions/TestComponents.py +++ b/testsuite/Testsrc/Testlib/TestOptions/TestComponents.py @@ -182,7 +182,8 @@ class TestImportComponentOptions(OptionTestCase): """test cases for component loading.""" def setUp(self): - self.options = [Option("--cls", action=ImportComponentAction), + self.options = [Option("--cls", cf=("config", "cls"), + action=ImportComponentAction), Option("--module", action=ImportModuleAction)] self.result = argparse.Namespace() @@ -227,3 +228,10 @@ class TestImportComponentOptions(OptionTestCase): self.assertRaises(SystemExit, self.parser.parse, ["-C", config_file, "--cls", "Bcfg2.No.Such.Thing"]) + + @make_config({"config": {"test": "foo", "cls": "Two"}}) + def test_default_from_config_for_component_options(self, config_file): + """use default value from config file for options added by dynamic loaded component.""" + self.parser.parse(["-C", config_file]) + self.assertEqual(self.result.cls, Two.Two) + self.assertEqual(self.result.test, "foo") diff --git a/testsuite/Testsrc/Testlib/TestOptions/Two.py b/testsuite/Testsrc/Testlib/TestOptions/Two.py index 189e0817f..0120e8b77 100644 --- a/testsuite/Testsrc/Testlib/TestOptions/Two.py +++ b/testsuite/Testsrc/Testlib/TestOptions/Two.py @@ -1,6 +1,7 @@ """Test module for component loading.""" +from Bcfg2.Options import Option class Two(object): """Test class for component loading.""" - pass + options = [Option('--test', cf=("config", "test"), dest="test", default="bar")] |