(self, typecallable)
| 548 | self.assert_(e7 not in canary.removed) |
| 549 | |
| 550 | def _test_list_dataclasses(self, typecallable): |
| 551 | creator = self.SimpleComparableEntity |
| 552 | |
| 553 | @dataclasses.dataclass |
| 554 | class Foo: |
| 555 | attr: List[Any] = dataclasses.field(default_factory=list) |
| 556 | |
| 557 | canary = Canary() |
| 558 | instrumentation.register_class(Foo) |
| 559 | d = _register_attribute( |
| 560 | Foo, |
| 561 | "attr", |
| 562 | uselist=True, |
| 563 | typecallable=typecallable, |
| 564 | useobject=True, |
| 565 | ) |
| 566 | canary.listen(d) |
| 567 | |
| 568 | obj = Foo() |
| 569 | direct = obj.attr |
| 570 | |
| 571 | e1 = creator(a=1, b=2) |
| 572 | collections.collection_adapter(direct).append_with_event(e1) |
| 573 | |
| 574 | like_me = typecallable() |
| 575 | like_me.append(e1) |
| 576 | |
| 577 | eq_(dataclasses.asdict(obj), {"attr": like_me}) |
| 578 | |
| 579 | def test_list(self): |
| 580 | self._test_adapter(list) |
no test coverage detected