From: <rb...@us...> - 2013-07-26 16:42:09
|
Revision: 8423 http://sourceforge.net/p/htmlunit/code/8423 Author: rbri Date: 2013-07-26 16:42:06 +0000 (Fri, 26 Jul 2013) Log Message: ----------- node.text is unsupported for text nodes in xml documents. Issue 1523 Modified Paths: -------------- trunk/htmlunit/src/changes/changes.xml trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/Text.java trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/javascript/host/xml/XMLDocument2Test.java Modified: trunk/htmlunit/src/changes/changes.xml =================================================================== --- trunk/htmlunit/src/changes/changes.xml 2013-07-25 18:36:28 UTC (rev 8422) +++ trunk/htmlunit/src/changes/changes.xml 2013-07-26 16:42:06 UTC (rev 8423) @@ -8,6 +8,9 @@ <body> <release version="2.13" date="???" description="Bugfixes"> + <action type="fix" dev="rbri" issue="1523" due-to="Chuck Dumont"> + node.text is unsupported for text nodes in xml documents. + </action> <action type="fix" dev="rbri" issue="1528" due-to="Chuck Dumont"> XPathEvaluator.evaluate() ignores namespace resolver. </action> Modified: trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/Text.java =================================================================== --- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/Text.java 2013-07-25 18:36:28 UTC (rev 8422) +++ trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/javascript/host/Text.java 2013-07-26 16:42:06 UTC (rev 8423) @@ -16,12 +16,16 @@ import static com.gargoylesoftware.htmlunit.javascript.configuration.BrowserName.CHROME; import static com.gargoylesoftware.htmlunit.javascript.configuration.BrowserName.FF; +import static com.gargoylesoftware.htmlunit.javascript.configuration.BrowserName.IE; +import net.sourceforge.htmlunit.corejs.javascript.Undefined; +import com.gargoylesoftware.htmlunit.html.DomNode; import com.gargoylesoftware.htmlunit.html.DomText; import com.gargoylesoftware.htmlunit.javascript.configuration.JsxClass; import com.gargoylesoftware.htmlunit.javascript.configuration.JsxFunction; import com.gargoylesoftware.htmlunit.javascript.configuration.JsxGetter; import com.gargoylesoftware.htmlunit.javascript.configuration.WebBrowser; +import com.gargoylesoftware.htmlunit.xml.XmlPage; /** * A JavaScript object for Text. @@ -30,6 +34,8 @@ * @author David K. Taylor * @author Chris Erskine * @author Ahmed Ashour + * @author Chuck Dumont + * @author Ronald Brill */ @JsxClass(domClasses = DomText.class) public class Text extends CharacterDataImpl { @@ -41,12 +47,6 @@ } /** - * Initialize this object. - */ - public void initialize() { - } - - /** * Split a Text node in two. * @param offset the character position at which to split the Text node * @return the Text node that was split from this node @@ -65,4 +65,17 @@ public String getWholeText() { return ((DomText) getDomNodeOrDie()).getWholeText(); } + + /** + * Returns the value of the node. + * @return the value of the node + */ + @JsxGetter(@WebBrowser(IE)) + public Object getText() { + final DomNode node = getDomNodeOrDie(); + if (node.getPage() instanceof XmlPage) { + return ((DomText) node).getWholeText(); + } + return Undefined.instance; + } } Modified: trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/javascript/host/xml/XMLDocument2Test.java =================================================================== --- trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/javascript/host/xml/XMLDocument2Test.java 2013-07-25 18:36:28 UTC (rev 8422) +++ trunk/htmlunit/src/test/java/com/gargoylesoftware/htmlunit/javascript/host/xml/XMLDocument2Test.java 2013-07-26 16:42:06 UTC (rev 8423) @@ -21,7 +21,6 @@ import com.gargoylesoftware.htmlunit.BrowserRunner.Alerts; import com.gargoylesoftware.htmlunit.BrowserRunner.Browser; import com.gargoylesoftware.htmlunit.BrowserRunner.Browsers; -import com.gargoylesoftware.htmlunit.BrowserRunner.NotYetImplemented; import com.gargoylesoftware.htmlunit.WebDriverTestCase; /** @@ -187,7 +186,6 @@ @Test @Alerts({ "content", "content" }) @Browsers(Browser.IE) - @NotYetImplemented public void text() throws Exception { final String html = "<html><head><script>\n" + " function test() {\n" |