]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
- repair bool() for instance level event listener where events are classlevel, contin...
authorMike Bayer <mike_mp@zzzcomputing.com>
Thu, 20 Sep 2012 16:03:24 +0000 (12:03 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Thu, 20 Sep 2012 16:03:24 +0000 (12:03 -0400)
lib/sqlalchemy/event.py
test/base/test_events.py

index ee4c0ad32ca02a65a8ff2fde67e7bf79e1f7b9a9..633cb96f86330b1f605bff19531ffad968e6798a 100644 (file)
@@ -352,7 +352,7 @@ class _EmptyListener(object):
         return iter(self.parent_listeners)
 
     def __nonzero__(self):
-        return False
+        return bool(self.parent_listeners)
 
 class _CompoundListener(object):
     _exec_once = False
index 7ae05e6c383a05573ad1fe0fc40eb84f15f67255..657ddc1be02055caa018fdd9a937b68a1b3a8332 100644 (file)
@@ -50,6 +50,13 @@ class EventsTest(fixtures.TestBase):
         eq_(len(self.Target().dispatch.event_two), 0)
         eq_(len(t1.dispatch.event_two), 0)
 
+    def test_bool_clslevel(self):
+        def listen_one(x, y):
+            pass
+        event.listen(self.Target, "event_one", listen_one)
+        t = self.Target()
+        assert t.dispatch.event_one
+
     def test_register_class_instance(self):
         def listen_one(x, y):
             pass