diff options
| -rw-r--r-- | nova/common/cfg.py | 2 | ||||
| -rw-r--r-- | nova/tests/test_cfg.py | 5 |
2 files changed, 6 insertions, 1 deletions
diff --git a/nova/common/cfg.py b/nova/common/cfg.py index 54940e7d9..58d17d99f 100644 --- a/nova/common/cfg.py +++ b/nova/common/cfg.py @@ -229,7 +229,7 @@ class ArgsAlreadyParsedError(Error): return ret -class NoSuchOptError(Error): +class NoSuchOptError(Error, AttributeError): """Raised if an opt which doesn't exist is referenced.""" def __init__(self, opt_name, group=None): diff --git a/nova/tests/test_cfg.py b/nova/tests/test_cfg.py index b70b7838a..440b7acc7 100644 --- a/nova/tests/test_cfg.py +++ b/nova/tests/test_cfg.py @@ -598,6 +598,11 @@ class SadPathTestCase(BaseTestCase): self.assertFalse(hasattr(self.conf, 'foo')) self.assertRaises(NoSuchOptError, getattr, self.conf, 'foo') + def test_unknown_attr_is_attr_error(self): + self.conf([]) + self.assertFalse(hasattr(self.conf, 'foo')) + self.assertRaises(AttributeError, getattr, self.conf, 'foo') + def test_unknown_group_attr(self): self.conf.register_group(OptGroup('blaa')) |
