summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES.txt2
-rw-r--r--repoze/bfg/testing.py3
-rw-r--r--repoze/bfg/tests/test_testing.py4
3 files changed, 8 insertions, 1 deletions
diff --git a/CHANGES.txt b/CHANGES.txt
index aa6aeeadb..9366eec7a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -3,6 +3,8 @@ Next release
- Add ``keys``, ``items``, and ``values`` methods to
``testing.DummyModel``.
+ - Add __delitem__ method to ``testing.DummyModel``.
+
0.5.0 (11/18/2008)
- Fix ModelGraphTraverser; don't try to change the ``__name__`` or
diff --git a/repoze/bfg/testing.py b/repoze/bfg/testing.py
index be5026f24..9eb45f75b 100644
--- a/repoze/bfg/testing.py
+++ b/repoze/bfg/testing.py
@@ -228,6 +228,9 @@ class DummyModel:
ob = self.subs[name]
return ob
+ def __delitem__(self, name):
+ del self.subs[name]
+
def values(self):
""" Return the values set by __setitem__ """
return self.subs.values()
diff --git a/repoze/bfg/tests/test_testing.py b/repoze/bfg/tests/test_testing.py
index aa00b5c33..0dd3539df 100644
--- a/repoze/bfg/tests/test_testing.py
+++ b/repoze/bfg/tests/test_testing.py
@@ -287,7 +287,7 @@ class TestDummyModel(unittest.TestCase):
klass = self._getTargetClass()
return klass(name, parent, **kw)
- def test__setitem__and__getitem__and__contains__(self):
+ def test__setitem__and__getitem__and__delitem__and__contains__(self):
class Dummy:
pass
dummy = Dummy()
@@ -298,6 +298,8 @@ class TestDummyModel(unittest.TestCase):
self.assertEqual(model['abc'], dummy)
self.assertRaises(KeyError, model.__getitem__, 'none')
self.failUnless('abc' in model)
+ del model['abc']
+ self.failIf('abc' in model)
def test_extra_params(self):
model = self._makeOne(foo=1)