Revision: 935
          http://jwebunit.svn.sourceforge.net/jwebunit/?rev=935&view=rev
Author:   henryju
Date:     2012-01-27 09:43:35 +0000 (Fri, 27 Jan 2012)
Log Message:
-----------
Update WebDriver to version 2.17.0. Minor fixes.

Modified Paths:
--------------
    
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/ButtonAssertionsTest.java
    
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/ConcurrentJWebUnitTest.java
    
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/FramesAndWindowsTest.java
    
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/IElementTest.java
    trunk/jwebunit-core/pom.xml
    trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/api/IElement.java
    
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/junit/WebTester.java
    
trunk/jwebunit-htmlunit-plugin/src/main/java/net/sourceforge/jwebunit/htmlunit/HtmlUnitElementImpl.java
    trunk/jwebunit-webdriver-plugin/pom.xml
    
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/WebDriverElementImpl.java
    
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/WebDriverTestingEngineImpl.java
    
trunk/jwebunit-webdriver-plugin/src/test/java/net/sourceforge/jwebunit/webdriver/JWebUnitTest.java

Added Paths:
-----------
    
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/FixedHtmlUnitDriver.java

Modified: 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/ButtonAssertionsTest.java
===================================================================
--- 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/ButtonAssertionsTest.java
 2011-12-30 15:06:39 UTC (rev 934)
+++ 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/ButtonAssertionsTest.java
 2012-01-27 09:43:35 UTC (rev 935)
@@ -47,7 +47,7 @@
     }
 
     @Test
-    public void testAssertButtonwithTowFormsfound() {
+    public void testAssertButtonwithTwoFormsFound() {
         beginAt("/pageWithTwoForms.html");
         assertButtonPresent("button1");
         assertButtonPresent("button2");

Modified: 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/ConcurrentJWebUnitTest.java
===================================================================
--- 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/ConcurrentJWebUnitTest.java
       2011-12-30 15:06:39 UTC (rev 934)
+++ 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/ConcurrentJWebUnitTest.java
       2012-01-27 09:43:35 UTC (rev 935)
@@ -51,7 +51,7 @@
         setBaseUrl(HOST_PATH + "/NavigationTest");
     }
 
-    @Rule public Timeout timeoutRule = new Timeout(2000);
+    @Rule public Timeout timeoutRule = new Timeout(10000);
 
     @Rule public ConcurrentRule concurrently = new ConcurrentRule();
     @Rule public RepeatingRule repeatedly = new RepeatingRule();

Modified: 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/FramesAndWindowsTest.java
===================================================================
--- 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/FramesAndWindowsTest.java
 2011-12-30 15:06:39 UTC (rev 934)
+++ 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/FramesAndWindowsTest.java
 2012-01-27 09:43:35 UTC (rev 935)
@@ -21,6 +21,8 @@
 import static net.sourceforge.jwebunit.junit.JWebUnit.*;
 import static org.junit.Assert.*;
 
+import static org.hamcrest.Matchers.containsString;
+
 import org.junit.Test;
 
 /**
@@ -113,9 +115,8 @@
     
     @Test public void testGetFrameSource() {
         beginAt("Frames.html");
-        assertTrue(getPageSource().indexOf("<frameset rows=\"33%, 33%, 
33%\">")>=0);
+        assertThat(getPageSource(), containsString("<frameset rows=\"33%, 33%, 
33%\">"));
         gotoFrame("TopFrame");
-        assertEquals("<html><body>TopFrame</body></html>", getPageSource());
         assertTextPresent("TopFrame");
        }
 

Modified: 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/IElementTest.java
===================================================================
--- 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/IElementTest.java
 2011-12-30 15:06:39 UTC (rev 934)
+++ 
trunk/jwebunit-commons-tests/src/main/java/net/sourceforge/jwebunit/tests/IElementTest.java
 2012-01-27 09:43:35 UTC (rev 935)
@@ -55,7 +55,8 @@
         beginAt("/template.html");
     }
     
-    @Test public void testSimple() {
+    @Test
+    public void testSimple() {
        // test an element that exists
        IElement element = getElementByXPath("//input[@id='test']");
        assertNotNull(element);
@@ -65,7 +66,8 @@
        assertEquals(element.getAttribute("value"), "test3");
     }
 
-    @Test public void testMissing() {
+    @Test
+    public void testMissing() {
        // a missing element should throw an exception
        try {
                getElementByXPath("//input[@id='test2']");
@@ -78,7 +80,8 @@
     /**
      * Test parent, child methods
      */
-    @Test public void testChildrenAndParent() {
+    @Test
+    public void testChildrenAndParent() {
        assertElementPresent("first");
        IElement element = getElementById("first");
        assertEquals(element.getName(), "li");
@@ -105,7 +108,8 @@
     /**
      * Test getting the XPath for multiple possible results
      */
-    @Test public void testMultiple() {
+    @Test
+    public void testMultiple() {
        List<IElement> children = getElementsByXPath("//li");
        assertEquals(children.size(), 4);
        assertEquals(children.get(0).getTextContent(), "one");
@@ -118,7 +122,8 @@
     /**
      * change the element and make sure XPath has changed
      */
-    @Test public void testChanging() {
+    @Test
+    public void testChanging() {
        {
                IElement element = getElementByXPath("//input[@id='test']");
                assertNotNull(element);
@@ -147,7 +152,8 @@
        
     }
     
-    @Test public void testWithXpath() {
+    @Test
+    public void testWithXpath() {
        IElement element = getElementByXPath("//body");
        assertNotNull(element);
        assertEquals("body", element.getName());
@@ -184,15 +190,16 @@
      * Test that setting attributes manually (e.g setAttribute("value") 
      * properly calls any attached Javascript.
      */
-    @Test public void testAttributeJavascript() {
+    @Test
+    public void testAttributeJavascript() {
        String testingText = new Date().toString();
        
        {
                IElement js1 = getElementById("js1");
                IElement js2 = getElementById("js2");
                
-               assertEquals(js1.getAttribute("value"), "initial");
-               assertEquals(js2.getAttribute("value"), "unchanged");
+               assertEquals("initial", js1.getAttribute("value"));
+               assertEquals("unchanged", js2.getAttribute("value"));
                
                // change js1's value
                js1.setAttribute("value", testingText);
@@ -203,8 +210,8 @@
                IElement js1 = getElementById("js1");
                IElement js2 = getElementById("js2");
                
-               assertEquals(js1.getAttribute("value"), testingText);
-               assertEquals(js2.getAttribute("value"), testingText);
+               assertEquals(testingText, js1.getAttribute("value"));
+               assertEquals(testingText, js2.getAttribute("value"));
        }
 
     }
@@ -228,7 +235,8 @@
      * Test preceding element XPath.
      * preceding: "Selects everything in the document that is before the start 
tag of the current node"
      */
-    @Test public void testPreceding() {
+    @Test
+    public void testPreceding() {
        IElement element = getElementById("first"); // li
        // should get the first <input>, which is
        // <input id="test" name="element_name" value="test3">

Modified: trunk/jwebunit-core/pom.xml
===================================================================
--- trunk/jwebunit-core/pom.xml 2011-12-30 15:06:39 UTC (rev 934)
+++ trunk/jwebunit-core/pom.xml 2012-01-27 09:43:35 UTC (rev 935)
@@ -31,6 +31,11 @@
                        <artifactId>servlet-api</artifactId>
                        <version>2.5</version>
                </dependency>
+               <dependency>
+                   <groupId>commons-lang</groupId>
+                   <artifactId>commons-lang</artifactId>
+                   <version>2.6</version>
+               </dependency>
        </dependencies>
        <properties>
                <topDirectoryLocation>..</topDirectoryLocation>

Modified: 
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/api/IElement.java
===================================================================
--- 
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/api/IElement.java    
    2011-12-30 15:06:39 UTC (rev 934)
+++ 
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/api/IElement.java    
    2012-01-27 09:43:35 UTC (rev 935)
@@ -87,7 +87,7 @@
         * 
         * @param string
         */
-       public void setAttribute(String string);
+       public void setAttribute(String name);
 
        /**
         * Set an attribute on this element.
@@ -95,7 +95,7 @@
         * @param string
         * @param value
         */
-       public void setAttribute(String string, String value);
+       public void setAttribute(String name, String value);
 
        /**
         * Set the text content on this element.

Modified: 
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/junit/WebTester.java
===================================================================
--- 
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/junit/WebTester.java 
    2011-12-30 15:06:39 UTC (rev 934)
+++ 
trunk/jwebunit-core/src/main/java/net/sourceforge/jwebunit/junit/WebTester.java 
    2012-01-27 09:43:35 UTC (rev 935)
@@ -19,6 +19,15 @@
 
 package net.sourceforge.jwebunit.junit;
 
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.not;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertThat;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
 import java.awt.Image;
 import java.awt.image.BufferedImage;
 import java.io.BufferedOutputStream;
@@ -36,8 +45,10 @@
 import java.util.Locale;
 import java.util.Map;
 import java.util.ResourceBundle;
+
 import javax.imageio.ImageIO;
 import javax.servlet.http.Cookie;
+
 import net.sourceforge.jwebunit.api.HttpHeader;
 import net.sourceforge.jwebunit.api.IElement;
 import net.sourceforge.jwebunit.api.ITestingEngine;
@@ -52,12 +63,10 @@
 import net.sourceforge.jwebunit.javascript.JavascriptPrompt;
 import net.sourceforge.jwebunit.util.TestContext;
 import net.sourceforge.jwebunit.util.TestingEngineRegistry;
+
 import org.apache.regexp.RE;
 import org.apache.regexp.RESyntaxException;
 
-import static org.hamcrest.CoreMatchers.*;
-import static org.junit.Assert.*;
-
 /**
  * Provides a high-level API for basic web application navigation and 
validation by providing
  * JUnit assertions. It supports use of a property file for web resources (a 
la Struts), though a resource file for the
@@ -2885,13 +2894,13 @@
                        // get the selected option
                 for (IElement child : field.getChildren()) {
                     if (child.getName().equals("option") && 
child.getAttribute("selected") != null) {
-                        value = child.getAttribute("value") == null ? 
child.getTextContent() : child.getAttribute("value");
+                        value = child.getAttribute("value");
                         break;
                     }
                     if (child.getName().equals("optgroup")) {
                         for (IElement subchild : child.getChildren()) {
                             if (subchild.getName().equals("option") && 
subchild.getAttribute("selected") != null) {
-                                value = child.getAttribute("value") == null ? 
child.getTextContent() : child.getAttribute("value");
+                                value = child.getAttribute("value");
                                 break;
                             }
                         }
@@ -2962,8 +2971,7 @@
                        // get the selected option
                        for (IElement children : field.getChildren()) {
                                // find the option which matches the given 
value (we can't specify random values)
-                               if (children.getName().equals("option") && 
-                                               (children.getAttribute("value") 
== null ? value.equals(children.getTextContent()) : 
value.equals(children.getAttribute("value")))) {
+                               if (children.getName().equals("option") && 
value.equals(children.getAttribute("value"))) {
                                        children.setAttribute("selected");
                                        return;
                                }

Modified: 
trunk/jwebunit-htmlunit-plugin/src/main/java/net/sourceforge/jwebunit/htmlunit/HtmlUnitElementImpl.java
===================================================================
--- 
trunk/jwebunit-htmlunit-plugin/src/main/java/net/sourceforge/jwebunit/htmlunit/HtmlUnitElementImpl.java
     2011-12-30 15:06:39 UTC (rev 934)
+++ 
trunk/jwebunit-htmlunit-plugin/src/main/java/net/sourceforge/jwebunit/htmlunit/HtmlUnitElementImpl.java
     2012-01-27 09:43:35 UTC (rev 935)
@@ -146,12 +146,12 @@
        /* (non-Javadoc)
         * @see 
net.sourceforge.jwebunit.api.IElement#setAttribute(java.lang.String, 
java.lang.String)
         */
-       public void setAttribute(String string, String value) {
-               if ("value".equals(string) && element instanceof HtmlInput) {
+       public void setAttribute(String name, String value) {
+               if ("value".equals(name) && element instanceof HtmlInput) {
                        // for HtmlInputs, we want to run any onChange code if 
the value changes
                        ((HtmlInput) element).setValueAttribute(value);
                } else {
-                       element.setAttributeNS(null, string, value);
+                       element.setAttribute(name, value);
                }
        }
 

Modified: trunk/jwebunit-webdriver-plugin/pom.xml
===================================================================
--- trunk/jwebunit-webdriver-plugin/pom.xml     2011-12-30 15:06:39 UTC (rev 
934)
+++ trunk/jwebunit-webdriver-plugin/pom.xml     2012-01-27 09:43:35 UTC (rev 
935)
@@ -30,7 +30,7 @@
         <dependency>
             <groupId>org.seleniumhq.selenium</groupId>
             <artifactId>selenium-htmlunit-driver</artifactId>
-            <version>2.8.0</version>
+            <version>2.17.0</version>
             <exclusions>
                 <exclusion>
                     <artifactId>commons-logging</artifactId>
@@ -41,7 +41,7 @@
         <dependency>
             <groupId>org.seleniumhq.selenium</groupId>
             <artifactId>selenium-support</artifactId>
-            <version>2.8.0</version>
+            <version>2.17.0</version>
         </dependency>
         <dependency>
             <groupId>net.sourceforge.jwebunit</groupId>

Added: 
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/FixedHtmlUnitDriver.java
===================================================================
--- 
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/FixedHtmlUnitDriver.java
                           (rev 0)
+++ 
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/FixedHtmlUnitDriver.java
   2012-01-27 09:43:35 UTC (rev 935)
@@ -0,0 +1,21 @@
+package net.sourceforge.jwebunit.webdriver;
+
+import com.gargoylesoftware.htmlunit.TopLevelWindow;
+import org.openqa.selenium.htmlunit.HtmlUnitDriver;
+
+public class FixedHtmlUnitDriver extends HtmlUnitDriver {
+
+    @Override
+    public void close() {
+        if (getCurrentWindow() != null) {
+            if (getWebClient().getWebWindows().size() > 1) {
+                ((TopLevelWindow) getCurrentWindow().getTopWindow()).close();
+                
+            }
+            else {
+                quit();
+            }
+        }
+    }
+    
+}


Property changes on: 
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/FixedHtmlUnitDriver.java
___________________________________________________________________
Added: svn:mime-type
   + text/plain

Modified: 
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/WebDriverElementImpl.java
===================================================================
--- 
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/WebDriverElementImpl.java
  2011-12-30 15:06:39 UTC (rev 934)
+++ 
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/WebDriverElementImpl.java
  2012-01-27 09:43:35 UTC (rev 935)
@@ -21,21 +21,15 @@
  */
 package net.sourceforge.jwebunit.webdriver;
 
-import org.openqa.selenium.JavascriptExecutor;
-
-import org.openqa.selenium.By;
-
-import org.openqa.selenium.WebElement;
-
 import java.util.ArrayList;
 import java.util.List;
 
 import net.sourceforge.jwebunit.api.IElement;
 
-import com.gargoylesoftware.htmlunit.html.DomNode;
-import com.gargoylesoftware.htmlunit.html.HtmlElement;
-import com.gargoylesoftware.htmlunit.html.HtmlInput;
-import com.gargoylesoftware.htmlunit.html.HtmlTextArea;
+import org.openqa.selenium.By;
+import org.openqa.selenium.JavascriptExecutor;
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.WebElement;
 
 /**
  * Webdriver implementation of IElement wrapper.
@@ -49,8 +43,14 @@
      * The wrapped element.
      */
     private WebElement element;
+    
+    /**
+     * A reference to the driver.
+     */
+    private WebDriver driver;
 
-    public WebDriverElementImpl(WebElement element) {
+    public WebDriverElementImpl(WebDriver driver, WebElement element) {
+        this.driver = driver;
         if (element == null)
             throw new NullPointerException("Cannot create an IElement for a 
null element.");
         this.element = element;
@@ -83,7 +83,7 @@
         List<IElement> children = new ArrayList<IElement>();
         for (WebElement e : element.findElements(By.xpath("child::*"))) {
             if (e != null)
-                children.add(new WebDriverElementImpl(e));
+                children.add(new WebDriverElementImpl(driver, e));
         }
         return children;
     }
@@ -94,7 +94,7 @@
      * @see net.sourceforge.jwebunit.api.IElement#getParent()
      */
     public IElement getParent() {
-        return new 
WebDriverElementImpl(element.findElement(By.xpath("parent::*")));
+        return new WebDriverElementImpl(driver, 
element.findElement(By.xpath("parent::*")));
     }
 
     /*
@@ -112,7 +112,7 @@
      * @see net.sourceforge.jwebunit.api.IElement#getElement(java.lang.String)
      */
     public IElement getElement(String xpath) {
-        return new WebDriverElementImpl((WebElement) 
element.findElement(By.xpath(xpath)));
+        return new WebDriverElementImpl(driver, (WebElement) 
element.findElement(By.xpath(xpath)));
     }
 
     /*
@@ -123,7 +123,7 @@
     public List<IElement> getElements(String xpath) {
         List<IElement> elements = new ArrayList<IElement>();
         for (WebElement o : element.findElements(By.xpath(xpath))) {
-            elements.add(new WebDriverElementImpl(o));
+            elements.add(new WebDriverElementImpl(driver, o));
         }
         return elements;
     }
@@ -137,8 +137,8 @@
      * 
      * @see 
net.sourceforge.jwebunit.api.IElement#setAttribute(java.lang.String)
      */
-    public void setAttribute(String string) {
-        throw new UnsupportedOperationException("Not supported yet.");
+    public void setAttribute(String name) {
+        ((JavascriptExecutor) driver).executeScript("return 
arguments[0].setAttribute(arguments[1], true);", element, name);
     }
 
     /*
@@ -146,8 +146,13 @@
      * 
      * @see 
net.sourceforge.jwebunit.api.IElement#setAttribute(java.lang.String, 
java.lang.String)
      */
-    public void setAttribute(String string, String value) {
-        throw new UnsupportedOperationException("Not supported yet.");
+    public void setAttribute(String name, String value) {
+        if ("value".equals(name) && "input".equals(element.getTagName())) {
+            // for inputs, we want to run any onChange code if the value 
changes
+            element.sendKeys(value);
+        } else {
+            ((JavascriptExecutor) driver).executeScript("return 
arguments[0].setAttribute(arguments[1], arguments[2]);", element, name, value);
+        }
     }
 
     /*
@@ -156,7 +161,19 @@
      * @see 
net.sourceforge.jwebunit.api.IElement#setTextContent(java.lang.String)
      */
     public void setTextContent(String value) {
-        throw new UnsupportedOperationException("Not supported yet.");
+        if (element.getTagName().equals("textarea")) {
+            element.clear();
+            element.sendKeys(value);
+        } else {
+            ((JavascriptExecutor) driver).executeScript(
+                "var parent = arguments[0];" +
+                "var children = parent.childNodes;" +
+                "for (i=0; i< children.length; i++) {" +
+                "  parent.removeChild(children[i]);" +
+                "}" +
+                "parent.appendChild(document.createTextNode(arguments[1]));"
+                , element, value);
+        }
     }
 
     @Override

Modified: 
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/WebDriverTestingEngineImpl.java
===================================================================
--- 
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/WebDriverTestingEngineImpl.java
    2011-12-30 15:06:39 UTC (rev 934)
+++ 
trunk/jwebunit-webdriver-plugin/src/main/java/net/sourceforge/jwebunit/webdriver/WebDriverTestingEngineImpl.java
    2012-01-27 09:43:35 UTC (rev 935)
@@ -717,7 +717,7 @@
     private WebElement getButton(String nameOrID) {
         WebElement e = getWebElementByXPath("//input[(@type='submit' or 
@type='image' or @type='reset' or @type='button') and (@name=" + 
escapeQuotes(nameOrID) + " or @id=" + escapeQuotes(nameOrID) + ")]", false, 
true);
         if (e == null) {
-            e = getWebElementByXPath("//button[@type='submit' and (@name=" + 
escapeQuotes(nameOrID) + " or @id=" + escapeQuotes(nameOrID) + ")]", false, 
true);
+            e = getWebElementByXPath("//button[@name=" + 
escapeQuotes(nameOrID) + " or @id=" + escapeQuotes(nameOrID) + "]", false, 
true);
         }
         return e;
     }
@@ -756,7 +756,7 @@
 
     public String getPageText() {
         try {
-            return driver.findElement(By.xpath("//body")).getText();
+            return driver.findElement(By.tagName("body")).getText();
         } catch (Exception e) {
             //Maybe this is not HTML
             return driver.getPageSource();
@@ -764,17 +764,19 @@
     }
 
     public String getPageSource() {
-        String encoding = "ISO-8859-1";
-        if (response.getEntity().getContentEncoding() != null) {
-            encoding = response.getEntity().getContentEncoding().getValue();
-        }
-        
-        try {
-            return IOUtils.toString(response.getEntity().getContent(), 
encoding);
-        }
-        catch (IOException e) {
-            throw new RuntimeException(e);
-        }
+        return driver.getPageSource();
+        //Do not work when there are requests following loading of main page 
(like frames)
+//        String encoding = "ISO-8859-1";
+//        if (response.getEntity().getContentEncoding() != null) {
+//            encoding = response.getEntity().getContentEncoding().getValue();
+//        }
+//        
+//        try {
+//            return IOUtils.toString(response.getEntity().getContent(), 
encoding);
+//        }
+//        catch (IOException e) {
+//            throw new RuntimeException(e);
+//        }
     }
 
     public String getPageTitle() {
@@ -1018,7 +1020,7 @@
 
     public IElement getElementByXPath(String xpath) {
         try {
-            return new 
WebDriverElementImpl(driver.findElement(By.xpath(xpath)));
+            return new WebDriverElementImpl(driver, 
driver.findElement(By.xpath(xpath)));
         }
         catch (NoSuchElementException e) {
             return null;
@@ -1027,7 +1029,7 @@
 
     public IElement getElementByID(String id) {
         try {
-            return new WebDriverElementImpl(driver.findElement(By.id(id)));
+            return new WebDriverElementImpl(driver, 
driver.findElement(By.id(id)));
         }
         catch (NoSuchElementException e) {
             return null;
@@ -1038,7 +1040,7 @@
         List<IElement> result = new ArrayList<IElement>();
         List<WebElement> elements = driver.findElements(By.xpath(xpath));
         for (WebElement child : elements) {
-            result.add(new WebDriverElementImpl(child));
+            result.add(new WebDriverElementImpl(driver, child));
         }
         return result;
     }

Modified: 
trunk/jwebunit-webdriver-plugin/src/test/java/net/sourceforge/jwebunit/webdriver/JWebUnitTest.java
===================================================================
--- 
trunk/jwebunit-webdriver-plugin/src/test/java/net/sourceforge/jwebunit/webdriver/JWebUnitTest.java
  2011-12-30 15:06:39 UTC (rev 934)
+++ 
trunk/jwebunit-webdriver-plugin/src/test/java/net/sourceforge/jwebunit/webdriver/JWebUnitTest.java
  2012-01-27 09:43:35 UTC (rev 935)
@@ -18,10 +18,9 @@
  */
 package net.sourceforge.jwebunit.webdriver;
 
-import org.junit.AfterClass;
-
 import net.sourceforge.jwebunit.tests.ButtonAssertionsTest;
 import net.sourceforge.jwebunit.tests.CharsetTest;
+import net.sourceforge.jwebunit.tests.ConcurrentJWebUnitTest;
 import net.sourceforge.jwebunit.tests.CustomTesterTest;
 import net.sourceforge.jwebunit.tests.ExpectedTableAssertionsHtmlTest;
 import net.sourceforge.jwebunit.tests.ExpectedTableAssertionsXHtmlTest;
@@ -32,12 +31,10 @@
 import net.sourceforge.jwebunit.tests.HtmlParsingTest;
 import net.sourceforge.jwebunit.tests.IElementTest;
 import net.sourceforge.jwebunit.tests.ImageTest;
-import net.sourceforge.jwebunit.tests.ConcurrentJWebUnitTest;
 import net.sourceforge.jwebunit.tests.JavaScriptEventsTest;
 import net.sourceforge.jwebunit.tests.JavaScriptTest;
 import net.sourceforge.jwebunit.tests.NavigationTest;
 import net.sourceforge.jwebunit.tests.NonHtmlContentTest;
-import net.sourceforge.jwebunit.tests.RedirectionTest;
 import net.sourceforge.jwebunit.tests.ResourceBundleAssertionsTest;
 import net.sourceforge.jwebunit.tests.ResponseServletTest;
 import net.sourceforge.jwebunit.tests.SelectOptionsTest;
@@ -47,6 +44,8 @@
 import net.sourceforge.jwebunit.tests.WebCookieTest;
 import net.sourceforge.jwebunit.tests.XPathTest;
 import net.sourceforge.jwebunit.tests.util.JettySetup;
+
+import org.junit.AfterClass;
 import org.junit.runner.RunWith;
 import org.junit.runners.Suite;
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
Try before you buy = See our experts in action!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-dev2
_______________________________________________
JWebUnit-development mailing list
JWebUnit-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jwebunit-development

Reply via email to