1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package net.sourceforge.jwebunit.tests;
20
21 import static net.sourceforge.jwebunit.junit.JWebUnit.assertTitleEquals;
22 import static net.sourceforge.jwebunit.junit.JWebUnit.beginAt;
23 import static net.sourceforge.jwebunit.junit.JWebUnit.clickElementByXPath;
24 import static net.sourceforge.jwebunit.junit.JWebUnit.getElementTextByXPath;
25 import static net.sourceforge.jwebunit.junit.JWebUnit.setBaseUrl;
26 import static org.junit.Assert.assertEquals;
27
28 import org.junit.Test;
29
30
31
32
33
34 public class XPathTest extends JWebUnitAPITestCase {
35
36 public void setUp() throws Exception {
37 super.setUp();
38 setBaseUrl(HOST_PATH + "/XPathTest");
39 }
40
41 @Test public void testAssertElementPresentByXPath() throws Throwable {
42 beginAt("/testPage.html");
43 assertPassFail(
44 "assertElementPresentByXPath",
45 "//tr[contains(.//a/@href,\"next\") and contains(string(),\"test link\")]",
46 "//InvalidXPath");
47 }
48
49 @Test public void testAssertElementNotPresentByXPath() throws Throwable {
50 beginAt("/testPage.html");
51 assertPassFail("assertElementNotPresentByXPath", "//InvalidXPath",
52 "//tr[contains(.//a/@href,\"next\") and contains(string(),\"test link\")]");
53 }
54
55 @Test public void testClickElementByXPath() throws Throwable {
56 beginAt("/testPage.html");
57 clickElementByXPath("//tr//a[contains(@href,\"next\") and contains(string(),\"test link\")]");
58 assertTitleEquals("Next");
59 }
60
61 @Test public void testGetElementTextByXPath() throws Throwable {
62 beginAt("/testPage.html");
63 assertEquals("test link", getElementTextByXPath("//tr//a[contains(@href,\"next\")]"));
64 }
65 }