Esempio n. 1
0
class TestEventMessage(TestCase):
    def setUp(self):
        self.elm = WebElement("tag")
        self.elm.js_exec = MagicMock()
        self.mock = MagicMock(_is_coroutine=False)
        self.elm.addEventListener("click", self.mock)
        self.msg = {"type": "event", "id": self.elm.rimo_id, "event": {"type": "click"}}
        self.event = Event(**self.msg.get("event"))

    def test_handle_event(self):
        self.elm.js_exec.assert_called_once_with("addEventListener", "click")
        self.elm.dispatchEvent(self.event)
        self.assertTrue(self.mock.called)

    def test_remove_event(self):
        self.elm.removeEventListener("click", self.mock)
        self.elm.js_exec.assert_called_with("removeEventListener", "click")
        self.elm.dispatchEvent(self.event)
        self.mock.assert_not_called()