diff options
-rw-r--r-- | morphlib/morph2.py | 3 | ||||
-rw-r--r-- | morphlib/morph2_tests.py | 13 |
2 files changed, 16 insertions, 0 deletions
diff --git a/morphlib/morph2.py b/morphlib/morph2.py index b825f8cf..37e6f24f 100644 --- a/morphlib/morph2.py +++ b/morphlib/morph2.py @@ -49,6 +49,9 @@ class Morphology(object): def __contains__(self, key): return key in self._dict + + def keys(self): + return self._dict.keys() def _set_defaults(self): if 'max-jobs' in self: diff --git a/morphlib/morph2_tests.py b/morphlib/morph2_tests.py index a862a3a8..0d3e7168 100644 --- a/morphlib/morph2_tests.py +++ b/morphlib/morph2_tests.py @@ -79,3 +79,16 @@ class MorphologyTests(unittest.TestCase): self.assertEqual(m['disk-size'], 1024**3) + def test_returns_dict_keys(self): + m = Morphology(''' + { + "name": "foo", + "kind": "system", + "disk-size": "1g" + } + ''') + + self.assertTrue('name' in m.keys()) + self.assertTrue('kind' in m.keys()) + self.assertTrue('disk-size' in m.keys()) + |