MCPcopy Create free account
hub / github.com/ipython/traitlets / test_notify_args

Method test_notify_args

tests/test_traitlets.py:750–773  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

748 self.assertTrue(change in b._notify2)
749
750 def test_notify_args(self):
751 def callback0():
752 self.cb = ()
753
754 def callback1(change):
755 self.cb = change
756
757 class A(HasTraits):
758 a = Int()
759
760 a = A()
761 a.on_trait_change(callback0, "a")
762 a.a = 10
763 self.assertEqual(self.cb, ())
764 a.unobserve(callback0, "a")
765
766 a.observe(callback1, "a")
767 a.a = 100
768 change = change_dict("a", 10, 100, a, "change")
769 self.assertEqual(self.cb, change)
770 self.assertEqual(len(a._trait_notifiers["a"]["change"]), 1)
771 a.unobserve(callback1, "a")
772
773 self.assertEqual(len(a._trait_notifiers["a"]["change"]), 0)
774
775 def test_notify_only_once(self):
776 class A(HasTraits):

Callers

nothing calls this directly

Calls 5

change_dictFunction · 0.85
on_trait_changeMethod · 0.80
unobserveMethod · 0.80
observeMethod · 0.80
AClass · 0.70

Tested by

no test coverage detected