def test_arrow_navigation_execute_should_call_js_loader_exec_js(self): context_mock = Mock() with patch.object(JsCodeLoader, 'exec_js') as exec_js_mock: exec_js_mock.return_value = 'some_element' arrow_action = ArrowNavigationAction() arrow_action.execute(context_mock, 'element', 'some element', False) exec_js_mock.assert_called_once_with(context_mock, 'arrow_navigation.js', 'some element', '30')
def test_execute_should_include_key_press_attribute_if_passed(self): context_mock = Mock() with patch.object(JsCodeLoader, 'exec_js') as exec_js_mock: exec_js_mock.return_value = 'some_element' arrow_action = ArrowNavigationAction() arrow_action.execute(context_mock, 'element', 'some element', '20') exec_js_mock.assert_called_once_with(context_mock, 'arrow_navigation.js', 'some element', '20')
def test_execute_should_throw_action_failed_error_on_not_found_response(self): context_mock = Mock() with patch.object(JsCodeLoader, 'exec_js') as exec_js_mock: exec_js_mock.return_value = 'Not found...' arrow_action = ArrowNavigationAction() try: arrow_action.execute(context_mock, 'element', 'some element', '20') self.assertTrue(False) except ActionFailedError: self.assertTrue(True) exec_js_mock.assert_called_once_with(context_mock, 'arrow_navigation.js', 'some element', '20')
def test_execute_should_throw_action_failed_error_on_max_key_presses_reached(self): context_mock = Mock() with patch.object(JsCodeLoader, 'exec_js') as exec_js_mock: exec_js_mock.return_value = 'Max number of key presses reached...' arrow_action = ArrowNavigationAction() try: arrow_action.execute(context_mock, 'element', 'some element', '20') self.assertTrue(False) except ActionFailedError: self.assertTrue(True) exec_js_mock.assert_called_once_with(context_mock, 'arrow_navigation.js', 'some element', '20')