def test_callback_is_settable(self): xs = [] b = Button(callback=(lambda: xs.append(1))) b.handle_event(Click(target_id=b.id)) self.assertEqual([1], xs) xs = [] b.callback = (lambda: xs.append(2)) b.handle_event(Click(target_id=b.id)) self.assertEqual([2], xs) xs = [] b.callback = None b.handle_event(Click(target_id=b.id)) self.assertEqual([], xs)
def test_event_dispatch(self): decoy1 = Button() button = Button() decoy2 = Button() xs = [] button.callback = (lambda: xs.append(1)) gui = GUI(decoy1, button, decoy2) gui.dispatch_event(Click(target_id=button.id)) self.assertEqual([1], xs)