Change-Id: I4e0883c58c425fc6287212a97f740016223914b5tags/7.4.8
import com.vaadin.ui.Layout; | import com.vaadin.ui.Layout; | ||||
import com.vaadin.ui.NativeButton; | import com.vaadin.ui.NativeButton; | ||||
public class FileDownloaderTest extends AbstractTestUIWithLog { | |||||
public class FileDownloaderUI extends AbstractTestUIWithLog { | |||||
private AbstractComponent firstDownloadComponent; | private AbstractComponent firstDownloadComponent; | ||||
/* | |||||
* 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; | |||||
import org.junit.Test; | |||||
import org.openqa.selenium.By; | |||||
import com.vaadin.testbench.elements.ButtonElement; | |||||
import com.vaadin.tests.tb3.MultiBrowserTest; | |||||
public class FileDownloaderUITest extends MultiBrowserTest { | |||||
@Test | |||||
public void ensureButtonWithDownloaderCanBeRemoved() { | |||||
openTestURL(); | |||||
By id = By.id("com.vaadin.ui.ButtonDynamicimage"); | |||||
assertElementPresent(id); | |||||
$(ButtonElement.class).caption("Remove first download button").first() | |||||
.click(); | |||||
assertElementNotPresent(id); | |||||
} | |||||
} |
protected void click(CheckBoxElement checkbox) { | protected void click(CheckBoxElement checkbox) { | ||||
checkbox.findElement(By.xpath("input")).click(); | checkbox.findElement(By.xpath("input")).click(); | ||||
} | } | ||||
/** | |||||
* Asserts that an element is present | |||||
* | |||||
* @param by | |||||
* the locatore for the element | |||||
*/ | |||||
protected void assertElementPresent(By by) { | |||||
Assert.assertTrue("Element is not present", isElementPresent(by)); | |||||
} | |||||
/** | |||||
* Asserts that an element is not present | |||||
* | |||||
* @param by | |||||
* the locatore for the element | |||||
*/ | |||||
protected void assertElementNotPresent(By by) { | |||||
Assert.assertFalse("Element is present", isElementPresent(by)); | |||||
} | |||||
} | } |
<?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://arturwin.office.itmill.com:8888/" /> | |||||
<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.FileDownloaderTest?restartApplication</td> | |||||
<td></td> | |||||
</tr> | |||||
<tr> | |||||
<td>assertElementPresent</td> | |||||
<td>vaadin=runcomvaadintestscomponentsFileDownloaderTest::PID_Scom.vaadin.ui.ButtonDynamicimage/domChild[0]/domChild[0]</td> | |||||
<td></td> | |||||
</tr> | |||||
<tr> | |||||
<td>click</td> | |||||
<td>vaadin=runcomvaadintestscomponentsFileDownloaderTest::/VVerticalLayout[0]/VOrderedLayout$Slot[1]/VVerticalLayout[0]/VOrderedLayout$Slot[4]/VButton[0]/domChild[0]/domChild[0]</td> | |||||
<td></td> | |||||
</tr> | |||||
<tr> | |||||
<td>assertElementNotPresent</td> | |||||
<td>vaadin=runcomvaadintestscomponentsFileDownloaderTest::PID_Scom.vaadin.ui.ButtonDynamicimage/domChild[0]/domChild[0]</td> | |||||
<td></td> | |||||
</tr> | |||||
</tbody></table> | |||||
</body> | |||||
</html> |