summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschettino72 <schettino72@gmail.com>2013-11-25 14:18:34 +1300
committerschettino72 <schettino72@gmail.com>2013-11-25 14:18:34 +1300
commit8fc91105a0ee484fb9c76e7e957c78a5f1901ddb (patch)
tree606c9025740607a95b5a28b163d5d9b83e457947
parentaf192056ddcbf2e19500dd346ddc496bc1620f66 (diff)
downloadsqlalchemy-pr/40.tar.gz
orm.collection, list.clear(). remove 'before_delete()', added unit-test.pr/40
-rw-r--r--lib/sqlalchemy/orm/collections.py1
-rw-r--r--test/orm/test_collection.py10
2 files changed, 10 insertions, 1 deletions
diff --git a/lib/sqlalchemy/orm/collections.py b/lib/sqlalchemy/orm/collections.py
index fd1677058..ffd0b8c37 100644
--- a/lib/sqlalchemy/orm/collections.py
+++ b/lib/sqlalchemy/orm/collections.py
@@ -1163,7 +1163,6 @@ def _list_decorators():
def clear(fn):
def clear(self, index=-1):
- __before_delete(self)
for item in self:
__del(self, item)
fn(self)
diff --git a/test/orm/test_collection.py b/test/orm/test_collection.py
index f6493f1a8..f94c742b3 100644
--- a/test/orm/test_collection.py
+++ b/test/orm/test_collection.py
@@ -284,6 +284,16 @@ class CollectionsTest(fixtures.ORMTest):
del control[:]
assert_eq()
+ if hasattr(direct, 'clear'):
+ for i in range(1, 4):
+ e = creator()
+ direct.append(e)
+ control.append(e)
+
+ direct.clear()
+ control.clear()
+ assert_eq()
+
if hasattr(direct, 'extend'):
values = [creator(), creator(), creator()]