aboutsummaryrefslogtreecommitdiffstats
path: root/uitest
diff options
context:
space:
mode:
authorMarco Collovati <mcollovati@gmail.com>2018-03-19 17:44:59 +0100
committerIlia Motornyi <elmot@vaadin.com>2018-03-19 18:44:59 +0200
commit649f2f3eeae246e8f57e433c5fd3dcc8fe488d6c (patch)
tree68427c9e5007ea4aea416bb1b3b9170f8d433f9c /uitest
parent5a48f878017e44a132b586b3d2731d0073d70574 (diff)
downloadvaadin-framework-649f2f3eeae246e8f57e433c5fd3dcc8fe488d6c.tar.gz
vaadin-framework-649f2f3eeae246e8f57e433c5fd3dcc8fe488d6c.zip
Initialize VRichTextArea.client in RichTextAreaConnector
Fixes #10536
Diffstat (limited to 'uitest')
-rw-r--r--uitest/src/main/java/com/vaadin/tests/components/richtextarea/RichTextAreaDelegateToShortcutHandler.java25
-rw-r--r--uitest/src/test/java/com/vaadin/tests/components/richtextarea/RichTextAreaDelegateToShortcutHandlerTest.java40
2 files changed, 65 insertions, 0 deletions
diff --git a/uitest/src/main/java/com/vaadin/tests/components/richtextarea/RichTextAreaDelegateToShortcutHandler.java b/uitest/src/main/java/com/vaadin/tests/components/richtextarea/RichTextAreaDelegateToShortcutHandler.java
new file mode 100644
index 0000000000..ead2ebc4bd
--- /dev/null
+++ b/uitest/src/main/java/com/vaadin/tests/components/richtextarea/RichTextAreaDelegateToShortcutHandler.java
@@ -0,0 +1,25 @@
+package com.vaadin.tests.components.richtextarea;
+
+import com.vaadin.event.ShortcutAction;
+import com.vaadin.server.VaadinRequest;
+import com.vaadin.tests.components.AbstractTestUIWithLog;
+import com.vaadin.ui.Button;
+import com.vaadin.ui.RichTextArea;
+import com.vaadin.ui.VerticalLayout;
+
+public class RichTextAreaDelegateToShortcutHandler extends AbstractTestUIWithLog {
+
+ @Override
+ protected void setup(VaadinRequest request) {
+ final VerticalLayout layout = new VerticalLayout();
+ final RichTextArea name = new RichTextArea();
+ name.setCaption("Type your name here:");
+
+ Button button = new Button("Click Me");
+ button.setClickShortcut(ShortcutAction.KeyCode.ENTER);
+ button.addClickListener(e -> log("ShortcutHandler invoked " + name.getValue()));
+
+ layout.addComponents(name, button);
+ addComponent(layout);
+ }
+}
diff --git a/uitest/src/test/java/com/vaadin/tests/components/richtextarea/RichTextAreaDelegateToShortcutHandlerTest.java b/uitest/src/test/java/com/vaadin/tests/components/richtextarea/RichTextAreaDelegateToShortcutHandlerTest.java
new file mode 100644
index 0000000000..0fc2c631ca
--- /dev/null
+++ b/uitest/src/test/java/com/vaadin/tests/components/richtextarea/RichTextAreaDelegateToShortcutHandlerTest.java
@@ -0,0 +1,40 @@
+package com.vaadin.tests.components.richtextarea;
+
+import java.util.List;
+
+import com.vaadin.testbench.elements.RichTextAreaElement;
+import com.vaadin.tests.tb3.MultiBrowserTest;
+import org.junit.Test;
+import org.openqa.selenium.Keys;
+import org.openqa.selenium.WebElement;
+import org.openqa.selenium.remote.DesiredCapabilities;
+
+import static org.hamcrest.Matchers.containsString;
+import static org.junit.Assert.assertThat;
+
+public class RichTextAreaDelegateToShortcutHandlerTest extends MultiBrowserTest {
+
+ @Override
+ public List<DesiredCapabilities> getBrowsersToTest() {
+ return getBrowsersExcludingPhantomJS();
+ }
+
+ @Test
+ public void shouldDelegateToShortcutActionHandler() {
+ openTestURL();
+
+ WebElement textAreaEditor = $(RichTextAreaElement.class).first().getEditorIframe();
+ textAreaEditor.sendKeys("Test");
+ textAreaEditor.sendKeys(Keys.ENTER);
+
+ assertThat("Shortcut handler has not been invoked",
+ getLogRow(0), containsString("ShortcutHandler invoked Test"));
+
+ textAreaEditor.sendKeys(Keys.chord(Keys.SHIFT, Keys.ENTER));
+ textAreaEditor.sendKeys("another row");
+ textAreaEditor.sendKeys(Keys.ENTER);
+
+ assertThat("Shortcut handler has not been invoked",
+ getLogRow(0), containsString("ShortcutHandler invoked Test\nanother row"));
+ }
+}