diff options
Diffstat (limited to 'yarnutils')
-rw-r--r-- | yarnutils/vars.py | 3 | ||||
-rw-r--r-- | yarnutils/vars_tests.py | 10 |
2 files changed, 13 insertions, 0 deletions
diff --git a/yarnutils/vars.py b/yarnutils/vars.py index 9404ffa..c10ed95 100644 --- a/yarnutils/vars.py +++ b/yarnutils/vars.py @@ -45,3 +45,6 @@ class Variables(object): def __setitem__(self, key, value): self._dict[key] = value self._save(self._dict) + + def get(self, key, default=None): + return self._dict.get(key, default) diff --git a/yarnutils/vars_tests.py b/yarnutils/vars_tests.py index a49903e..e6b6279 100644 --- a/yarnutils/vars_tests.py +++ b/yarnutils/vars_tests.py @@ -34,6 +34,16 @@ class VariablesTests(unittest.TestCase): def test_unset_variable_is_None(self): vars = yarnutils.Variables(self.tempdir) self.assertEqual(vars['foo'], None) + self.assertEqual(vars.get('foo'), None) + + def test_get_returns_default_for_missing_variable(self): + vars = yarnutils.Variables(self.tempdir) + self.assertEqual(vars.get('foo', 'default'), 'default') + + def test_get_returns_value_for_variable_that_exists(self): + vars = yarnutils.Variables(self.tempdir) + vars['foo'] = 'value' + self.assertEqual(vars.get('foo', 'default'), 'value') def test_set_value_is_persistent(self): vars1 = yarnutils.Variables(self.tempdir) |