diff options
-rw-r--r-- | configobj.py | 2 | ||||
-rw-r--r-- | docs/configobj.txt | 11 | ||||
-rw-r--r-- | test_configobj.py | 24 |
3 files changed, 31 insertions, 6 deletions
diff --git a/configobj.py b/configobj.py index ed1d5ea..fee7bda 100644 --- a/configobj.py +++ b/configobj.py @@ -702,6 +702,8 @@ class Section(dict): self.comments = {} self.inline_comments = {} self.configspec = None + self.defaults = [] + self.extra_values = [] def setdefault(self, key, default=None): diff --git a/docs/configobj.txt b/docs/configobj.txt index ab8e9a4..60f78e9 100644 --- a/docs/configobj.txt +++ b/docs/configobj.txt @@ -2341,13 +2341,12 @@ From version 4 it lists all releases and changes. * ~25% performance improvement thanks to Christian Heimes * Removed __revision__ and __docformat__ * BUGFIX: Checks that failed validation would not populate 'default_values' and - 'restore_default_value' wouldn't work. -* String interpolation now works in list values. + 'restore_default_value' wouldn't work +* String interpolation now works in list values * After validation any additional entries not in the configspec are listed in - the 'extra_values' section member. - -XXX clear should also clear defaults and extras but not default_values - reset should clear all + the 'extra_values' section member +* BUGFIX: clear() clears 'defaults' + 2009/04/13 - Version 4.6.0 -------------------------- diff --git a/test_configobj.py b/test_configobj.py index f02d240..b68a505 100644 --- a/test_configobj.py +++ b/test_configobj.py @@ -2039,6 +2039,30 @@ def _test_extra_values(): [] """ +def _test_reset_and_clear_more(): + """ + >>> c = ConfigObj() + >>> c.extra_values = ['foo'] + >>> c.defaults = ['bar'] + >>> c.default_values = {'bar': 'baz'} + >>> c.clear() + >>> c.defaults + [] + >>> c.extra_values + [] + >>> c.default_values + {'bar': 'baz'} + >>> c.extra_values = ['foo'] + >>> c.defaults = ['bar'] + >>> c.reset() + >>> c.defaults + [] + >>> c.extra_values + [] + >>> c.default_values + {} + """ + # TODO: Test BOM handling # TODO: Test error code for badly built multiline values # TODO: Test handling of StringIO |