Make sure signal caching sender receivers don't prevent garbage collection of senders.
(self)
| 130 | self.assertEqual(result, [(second_receiver, "second")]) |
| 131 | |
| 132 | def test_cached_garbaged_collected(self): |
| 133 | """ |
| 134 | Make sure signal caching sender receivers don't prevent garbage |
| 135 | collection of senders. |
| 136 | """ |
| 137 | |
| 138 | class sender: |
| 139 | pass |
| 140 | |
| 141 | wref = weakref.ref(sender) |
| 142 | d_signal.connect(receiver_1_arg) |
| 143 | d_signal.send(sender, val="garbage") |
| 144 | del sender |
| 145 | garbage_collect() |
| 146 | try: |
| 147 | self.assertIsNone(wref()) |
| 148 | finally: |
| 149 | # Disconnect after reference check since it flushes the tested |
| 150 | # cache. |
| 151 | d_signal.disconnect(receiver_1_arg) |
| 152 | |
| 153 | def test_multiple_registration(self): |
| 154 | a = Callable() |
nothing calls this directly
no test coverage detected