]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
orm.collection, list.clear(). remove 'before_delete()', added unit-test.
authorschettino72 <schettino72@gmail.com>
Mon, 25 Nov 2013 01:18:34 +0000 (14:18 +1300)
committerschettino72 <schettino72@gmail.com>
Mon, 25 Nov 2013 01:18:34 +0000 (14:18 +1300)
lib/sqlalchemy/orm/collections.py
test/orm/test_collection.py

index fd1677058ea220093e24bb90ead5b37d662ffe6f..ffd0b8c379bc2b6b4a28c3299b97b23a73d25283 100644 (file)
@@ -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)
index f6493f1a8cc7e289d4789e8c120e991908f33288..f94c742b358162a1e50873fd730947423146b1b4 100644 (file)
@@ -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()]