diff options
author | Henri Sara <hesara@vaadin.com> | 2015-07-01 16:18:42 +0300 |
---|---|---|
committer | Vaadin Code Review <review@vaadin.com> | 2015-07-01 13:55:59 +0000 |
commit | bab0975e1288af9079780a030c439b0c2be832ac (patch) | |
tree | c3a99f8e96f8a53212fe5473d826d04b9d2f1533 | |
parent | 386593f390fbb6f7db0fee6e2c26057a16b7ff95 (diff) | |
download | vaadin-framework-bab0975e1288af9079780a030c439b0c2be832ac.tar.gz vaadin-framework-bab0975e1288af9079780a030c439b0c2be832ac.zip |
Migrate ComboBoxNoTextInput test from TB2 to TB4
Change-Id: I6e474b2306c6957d428117802ffda330b4809a6d
3 files changed, 107 insertions, 75 deletions
diff --git a/uitest/src/com/vaadin/tests/components/combobox/ComboBoxNoTextInput.java b/uitest/src/com/vaadin/tests/components/combobox/ComboBoxNoTextInput.java new file mode 100644 index 0000000000..6b0e42666f --- /dev/null +++ b/uitest/src/com/vaadin/tests/components/combobox/ComboBoxNoTextInput.java @@ -0,0 +1,46 @@ +/* + * Copyright 2000-2014 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ +package com.vaadin.tests.components.combobox; + +import com.vaadin.data.Property.ValueChangeEvent; +import com.vaadin.data.Property.ValueChangeListener; +import com.vaadin.server.VaadinRequest; +import com.vaadin.ui.CheckBox; + +public class ComboBoxNoTextInput extends ComboBoxSelecting { + + @Override + protected void setup(VaadinRequest request) { + super.setup(request); + comboBox.setTextInputAllowed(true); + + final CheckBox textInputCheckBox = new CheckBox("Text Input", true); + textInputCheckBox.setId("textInput"); + textInputCheckBox.addValueChangeListener(new ValueChangeListener() { + @Override + public void valueChange(ValueChangeEvent event) { + comboBox.setTextInputAllowed(textInputCheckBox.getValue()); + } + }); + addComponent(textInputCheckBox); + } + + @Override + protected String getTestDescription() { + return "ComboBox should open popup on click when text input is not allowed."; + } + +} diff --git a/uitest/src/com/vaadin/tests/components/combobox/ComboBoxNoTextInputTest.java b/uitest/src/com/vaadin/tests/components/combobox/ComboBoxNoTextInputTest.java new file mode 100644 index 0000000000..cb4cd54559 --- /dev/null +++ b/uitest/src/com/vaadin/tests/components/combobox/ComboBoxNoTextInputTest.java @@ -0,0 +1,61 @@ +/* + * Copyright 2000-2014 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ +package com.vaadin.tests.components.combobox; + +import org.junit.Assert; +import org.junit.Test; +import org.openqa.selenium.WebElement; + +import com.vaadin.testbench.By; +import com.vaadin.testbench.commands.TestBenchElementCommands; +import com.vaadin.testbench.elements.CheckBoxElement; +import com.vaadin.testbench.elements.ComboBoxElement; +import com.vaadin.tests.tb3.MultiBrowserTest; + +public class ComboBoxNoTextInputTest extends MultiBrowserTest { + + @Test + public void testComboBoxNoTextInputPopupOpensOnClick() throws Exception { + openTestURL(); + + // deactivate text input + click($(CheckBoxElement.class).id("textInput")); + + // click and check that popup appears + ComboBoxElement cb = $(ComboBoxElement.class).first(); + click(cb); + // popup is opened lazily + waitForElementPresent(By.vaadin("//com.vaadin.ui.ComboBox[0]#popup")); + } + + @Test + public void testComboBoxWithTextInputNoPopupOpensOnClick() throws Exception { + openTestURL(); + + // click and check that no popup appears + ComboBoxElement cb = $(ComboBoxElement.class).first(); + click(cb); + // popup is opened lazily + sleep(1000); + Assert.assertFalse(cb.isElementPresent(By.vaadin("#popup"))); + } + + private void click(ComboBoxElement cb) throws Exception { + WebElement element = cb.findElement(By.vaadin("#textbox")); + ((TestBenchElementCommands) element).click(8, 7); + } + +} diff --git a/uitest/tb2/com/vaadin/tests/components/combobox/ComboBoxNoTextInput.html b/uitest/tb2/com/vaadin/tests/components/combobox/ComboBoxNoTextInput.html deleted file mode 100644 index 2066da47c1..0000000000 --- a/uitest/tb2/com/vaadin/tests/components/combobox/ComboBoxNoTextInput.html +++ /dev/null @@ -1,75 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> -<head profile="http://selenium-ide.openqa.org/profiles/test-case"> -<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> -<link rel="selenium.base" href="http://localhost:8080/" /> -<title>New Test</title> -</head> -<body> -<table cellpadding="1" cellspacing="1" border="1"> -<thead> -<tr><td rowspan="1" colspan="3">New Test</td></tr> -</thead><tbody> -<tr> - <td>open</td> - <td>/run/com.vaadin.tests.components.combobox.ComboBoxes2?restartApplication</td> - <td></td> -</tr> -<!--Disabled text input--> -<tr> - <td>mouseClick</td> - <td>vaadin=runcomvaadintestscomponentscomboboxComboBoxes2::PID_Smenu#item0</td> - <td>34,8</td> -</tr> -<tr> - <td>mouseClick</td> - <td>vaadin=runcomvaadintestscomponentscomboboxComboBoxes2::Root/VOverlay[0]/VMenuBar[0]#item0</td> - <td>21,3</td> -</tr> -<tr> - <td>mouseClick</td> - <td>vaadin=runcomvaadintestscomponentscomboboxComboBoxes2::Root/VOverlay[1]/VMenuBar[0]#item8</td> - <td>52,7</td> -</tr> -<!--Check that clicking the text field opens the popup--> -<tr> - <td>mouseClick</td> - <td>vaadin=runcomvaadintestscomponentscomboboxComboBoxes2::PID_StestComponent/domChild[0]</td> - <td>37,8</td> -</tr> -<tr> - <td>assertElementPresent</td> - <td>vaadin=runcomvaadintestscomponentscomboboxComboBoxes2::Root/VFilterSelect$SuggestionPopup[0]/VFilterSelect$SuggestionMenu[0]#item0</td> - <td></td> -</tr> -<!--Enabled text input again--> -<tr> - <td>mouseClick</td> - <td>vaadin=runcomvaadintestscomponentscomboboxComboBoxes2::PID_Smenu#item0</td> - <td>35,5</td> -</tr> -<tr> - <td>mouseClick</td> - <td>vaadin=runcomvaadintestscomponentscomboboxComboBoxes2::Root/VOverlay[0]/VMenuBar[0]#item0</td> - <td>14,10</td> -</tr> -<tr> - <td>mouseClick</td> - <td>vaadin=runcomvaadintestscomponentscomboboxComboBoxes2::Root/VOverlay[1]/VMenuBar[0]#item8</td> - <td>34,6</td> -</tr> -<!--Check that clicking the text field does not open the popup--> -<tr> - <td>mouseClick</td> - <td>vaadin=runcomvaadintestscomponentscomboboxComboBoxes2::PID_StestComponent/domChild[0]</td> - <td>42,9</td> -</tr> -<tr> - <td>assertElementNotPresent</td> - <td>vaadin=runcomvaadintestscomponentscomboboxComboBoxes2::Root/VFilterSelect$SuggestionPopup[0]/VFilterSelect$SuggestionMenu[0]#item0</td> - <td></td> -</tr> -</tbody></table> -</body> -</html> |