Package com.googlecode.gwt.test

Source Code of com.googlecode.gwt.test.FocusPanelTest

package com.googlecode.gwt.test;

import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;

import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.TouchCancelEvent;
import com.google.gwt.event.dom.client.TouchCancelHandler;
import com.google.gwt.event.dom.client.TouchEndEvent;
import com.google.gwt.event.dom.client.TouchEndHandler;
import com.google.gwt.event.dom.client.TouchMoveEvent;
import com.google.gwt.event.dom.client.TouchMoveHandler;
import com.google.gwt.event.dom.client.TouchStartEvent;
import com.google.gwt.event.dom.client.TouchStartHandler;
import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.ui.FocusPanel;
import com.google.gwt.user.client.ui.Label;
import com.googlecode.gwt.test.utils.events.Browser;
import com.googlecode.gwt.test.utils.events.EventBuilder;

public class FocusPanelTest extends GwtTestTest {

   private Label child;
   private FocusPanel panel;
   private boolean test;

   @Before
   public void beforeFocusPanelTest() {
      child = new Label("focus panel's child widget");
      panel = new FocusPanel(child);
      test = false;
   }

   @Test
   public void click_EmptyPanel() {
      // Arrange
      panel = new FocusPanel();
      panel.addClickHandler(new ClickHandler() {

         public void onClick(ClickEvent event) {
            test = true;
         }
      });

      // Act
      Browser.click(panel);

      // Assert
      Assert.assertTrue(test);
   }

   @Test
   public void click_WithChild() {
      // Arrange
      panel.addClickHandler(new ClickHandler() {

         public void onClick(ClickEvent event) {
            test = true;
         }
      });

      child.addClickHandler(new ClickHandler() {

         public void onClick(ClickEvent event) {
            child.setText("clicked");

         }
      });

      // Act
      Browser.click(panel);

      // Assert
      Assert.assertTrue(test);
      // click event should not be dispatched to the child widget
      Assert.assertEquals("focus panel's child widget", child.getText());
   }

   @Test
   public void touchCancel() {
      // Arrange
      panel.addTouchCancelHandler(new TouchCancelHandler() {

         public void onTouchCancel(TouchCancelEvent event) {
            test = true;
         }
      });

      // Act
      Browser.dispatchEvent(panel, EventBuilder.create(Event.ONTOUCHCANCEL).build());

      // Assert
      Assert.assertTrue(test);
   }

   @Test
   public void touchEnd() {
      // Arrange
      panel.addTouchEndHandler(new TouchEndHandler() {

         public void onTouchEnd(TouchEndEvent event) {
            test = true;
         }
      });

      // Act
      Browser.dispatchEvent(panel, EventBuilder.create(Event.ONTOUCHEND).build());

      // Assert
      Assert.assertTrue(test);
   }

   @Test
   public void touchMove() {
      // Arrange
      panel.addTouchMoveHandler(new TouchMoveHandler() {

         public void onTouchMove(TouchMoveEvent event) {
            test = true;

         }
      });

      // Act
      Browser.dispatchEvent(panel, EventBuilder.create(Event.ONTOUCHMOVE).build());

      // Assert
      Assert.assertTrue(test);
   }

   @Test
   public void touchStart() {
      // Arrange
      panel.addTouchStartHandler(new TouchStartHandler() {

         public void onTouchStart(TouchStartEvent event) {
            test = true;

         }
      });

      // Act
      Browser.dispatchEvent(panel, EventBuilder.create(Event.ONTOUCHSTART).build());

      // Assert
      Assert.assertTrue(test);
   }

}
TOP

Related Classes of com.googlecode.gwt.test.FocusPanelTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.