@Test public void equality_is_on_the_id() { when(evaluator.existComponent("myId2")).thenReturn(true); Component component_1 = new Component(evaluator, id); Component component_2 = new Component(evaluator, "myId2"); Component component_3 = new Component(evaluator, id); assertThat(component_1, is(not(equalTo(component_2)))); assertThat(component_1, is(equalTo(component_3))); }
public static Component disabledComponent() { Evaluator evaluator = mock(Evaluator.class); when(evaluator.existComponent(id)).thenReturn(true); when(evaluator.isVisible(any(Component.class))).thenReturn(true); when(evaluator.isEnabled(any(Component.class))).thenReturn(false); return new Component(evaluator, id); }
public static Component visibleComponent() { Evaluator evaluator = mock(Evaluator.class); when(evaluator.existComponent(id)).thenReturn(true); when(evaluator.isVisible(any(Component.class))).thenReturn(true); when(evaluator.isEnabled(any(Component.class))).thenReturn(true); return new Component(evaluator, id); }
public static Component enabledComponent() { Evaluator evaluator = mock(Evaluator.class); when(evaluator.existComponent(id)).thenReturn(true); when(evaluator.isVisible(any(Component.class))).thenReturn(true); when(evaluator.isEnabled(any(Component.class))).thenReturn(true); return new Component(evaluator, id); }
public static Component invisibleComponent() { Evaluator evaluator = mock(Evaluator.class); when(evaluator.existComponent(id)).thenReturn(true); when(evaluator.isVisible(any(Component.class))).thenReturn(false); when(evaluator.isEnabled(any(Component.class))).thenReturn(true); return new Component(evaluator, id); }
@Test public void component_visibility() { when(evaluator.isVisible(any(Component.class))).thenReturn(true, false); Component visibleComponent = new Component(evaluator, id); Component invisibleComponent = new Component(evaluator, id); assertThat(visibleComponent.isVisible(), is(true)); assertThat(invisibleComponent.isVisible(), is(false)); verify(evaluator, times(2)).isVisible(any(Component.class)); }
@Test public void can_obtain_the_id() { Component component = new Component(evaluator, id); assertThat(component.id(), is(id)); }
@Test public void component_enability() { when(evaluator.isEnabled(any(Component.class))).thenReturn(true, true, false, false); Component enabledComponent = new Component(evaluator, id); Component disabledComponent = new Component(evaluator, id); assertThat(enabledComponent.isEnabled(), is(true)); assertThat(enabledComponent.isDisabled(), is(false)); assertThat(disabledComponent.isDisabled(), is(true)); assertThat(disabledComponent.isEnabled(), is(false)); verify(evaluator, times(4)).isEnabled(any(Component.class)); }
@Test public void test_toString() { when(evaluator.isEnabled(any(Component.class))).thenReturn(true); when(evaluator.isVisible(any(Component.class))).thenReturn(false); Component component = new Component(evaluator, id); assertThat(component.toString(), is("class org.testatoo.core.component.Component with state : enabled:true, visible:false")); } }
@Test public void test_component_can_contain_other_component() { when(evaluator.componentType(id)).thenReturn(Window); Window container = new Window(evaluator, id); Component contained_component = new Component(evaluator, id); Component not_contained_component = new Component(evaluator, id); when(evaluator.contains(container, contained_component)).thenReturn(true); assertThat(container.contains(contained_component), is(true)); when(evaluator.contains(container, not_contained_component)).thenReturn(false); assertThat(container.contains(not_contained_component), is(false)); verify(evaluator, times(2)).contains(any(Container.class), any(Component.class)); }
@Test public void can_mouseOut_on_component() { Component component = new Component(evaluator, id); Mouse.mouseOutOf(component); verify(evaluator, times(1)).mouseOut(component); }
@Test public void can_drag_and_component() { Component component_1 = new Component(evaluator, id); String id_2 = "cmp2"; when(evaluator.existComponent(id_2)).thenReturn(true); when(evaluator.componentType(id_2)).thenReturn(Button); Component component_2 = new Component(evaluator, id_2); Mouse.drag(component_1).on(component_2); verify(evaluator, times(1)).dragAndDrop(component_1, component_2); } }
@Test public void test_component_have_the_focus() { Component component = new Component(evaluator, id); when(evaluator.hasFocus(component)).thenReturn(false); assertThat(component.hasFocus(), is(false)); verify(evaluator, times(1)).hasFocus(component); }
@Test public void test_wait_until_with_success() { evaluator = mock(Evaluator.class); when(evaluator.existComponent(id)).thenReturn(true); when(evaluator.isVisible(any(Component.class))).thenReturn(false, false, false, false, false, false, true); when(evaluator.isEnabled(any(Component.class))).thenReturn(true); Component component = new Component(evaluator, id); waitUntil(component, is(visible())); verify(evaluator, times(7)).isVisible(any(Component.class)); }
@Test public void can_rightClick_on_component() { Component component = new Component(evaluator, id); Mouse.rightClickOn(component); verify(evaluator, times(1)).click(component, Click.right); }
@Test public void can_mouseOver_on_component() { Component component = new Component(evaluator, id); Mouse.mouseOverOn(component); verify(evaluator, times(1)).mouseOver(component); }
@Test public void can_click_on_component() { Component component = new Component(evaluator, id); Mouse.clickOn(component); verify(evaluator, times(1)).click(component, Click.left); }
@Test public void can_doubleClick_on_component() { Component component = new Component(evaluator, id); Mouse.doubleClickOn(component); verify(evaluator, times(1)).doubleClick(component); }
@Test public void test_wait_until_with_failure() { evaluator = mock(Evaluator.class); when(evaluator.existComponent(id)).thenReturn(true); when(evaluator.isVisible(any(Component.class))).thenReturn(false); when(evaluator.isEnabled(any(Component.class))).thenReturn(true); Component component = new Component(evaluator, id); try { waitUntil(component, is(visible())); fail(); } catch (Exception e) { assertThat(e.getMessage(), is("Unable to reach the condition in 1000 milliseconds")); } }
@Test public void test_mouse_usage_on_component() { Component component = new Component(evaluator, id); clickOn(component); doubleClickOn(component); dragMouseOut(component); dragMouseOver(component); verify(evaluator, times(1)).click(component, Click.left); verify(evaluator, times(1)).doubleClick(component); verify(evaluator, times(1)).mouseOut(component); verify(evaluator, times(1)).mouseOver(component); }