<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><style type="text/css"><!--
#msg dl { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fc0 solid; padding: 6px; }
#msg ul, pre { overflow: auto; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<title>[19953] trunk/LayoutTests</title>
</head>
<body>
<div id="msg">
<dl>
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/19953">19953</a></dd>
<dt>Author</dt> <dd>ddkilzer</dd>
<dt>Date</dt> <dd>2007-03-04 07:47:21 -0800 (Sun, 04 Mar 2007)</dd>
</dl>
<h3>Log Message</h3>
<pre>LayoutTests:
Reviewed by Nikolas Zimmermann.
- fix http://bugs.webkit.org/show_bug.cgi?id=12951
REGRESSION (r19949): LayoutTests/fast/xsl/xslt-processer.html fails
Fixed spelling of "processer" to "processor" in file names.
* fast/xsl/xslt-processer-expected.txt: Removed.
* fast/xsl/xslt-processer.html: Removed.
* fast/xsl/xslt-processor-expected.txt: Added. Results progressed after fixing
Bugzilla Bug 12735 (<rdar://problem/4545040>).
* fast/xsl/xslt-processor.html: Added.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsfastxslxsltprocessorexpectedtxt">trunk/LayoutTests/fast/xsl/xslt-processor-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxslxsltprocessorhtml">trunk/LayoutTests/fast/xsl/xslt-processor.html</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsfastxslxsltprocesserexpectedtxt">trunk/LayoutTests/fast/xsl/xslt-processer-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastxslxsltprocesserhtml">trunk/LayoutTests/fast/xsl/xslt-processer.html</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (19952 => 19953)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2007-03-03 02:18:43 UTC (rev 19952)
+++ trunk/LayoutTests/ChangeLog        2007-03-04 15:47:21 UTC (rev 19953)
</span><span class="lines">@@ -1,3 +1,18 @@
</span><ins>+2007-03-04 David Kilzer <ddkilzer@webkit.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ - fix http://bugs.webkit.org/show_bug.cgi?id=12951
+ REGRESSION (r19949): LayoutTests/fast/xsl/xslt-processer.html fails
+
+ Fixed spelling of "processer" to "processor" in file names.
+
+ * fast/xsl/xslt-processer-expected.txt: Removed.
+ * fast/xsl/xslt-processer.html: Removed.
+ * fast/xsl/xslt-processor-expected.txt: Added. Results progressed after fixing
+ Bugzilla Bug 12735 (<rdar://problem/4545040>).
+ * fast/xsl/xslt-processor.html: Added.
+
</ins><span class="cx"> 2007-03-02 Kevin McCullough <kmccullough@apple.com>
</span><span class="cx">
</span><span class="cx"> Reviewed by Geoff.
</span></span></pre></div>
<a id="trunkLayoutTestsfastxslxsltprocesserexpectedtxt"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/fast/xsl/xslt-processer-expected.txt (19952 => 19953)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xsl/xslt-processer-expected.txt        2007-03-03 02:18:43 UTC (rev 19952)
+++ trunk/LayoutTests/fast/xsl/xslt-processer-expected.txt        2007-03-04 15:47:21 UTC (rev 19953)
</span><span class="lines">@@ -1,124 +0,0 @@
</span><del>-0.1 original xml:
-<?xml-stylesheet type="text/xsl" href="xslt-text.xsl"?><TEST>SOURCE XML: &lt;&lt;&lt;&amp;тест&amp;&gt;&gt;&gt;</TEST>
-0.2 xsl1:
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
-
-<xsl:output method="text" encoding="KOI8-R"/>
-<xsl:template match="TEST">CHARACTERS IN XSLT: &lt;&lt;&lt;&amp;тест&amp;&gt;&gt;&gt;
-<xsl:apply-templates/><xsl:text>
-</xsl:text></xsl:template>
-
-<xsl:template>
-                <xsl:value-of select="."/>
-</xsl:template>
-
-</xsl:stylesheet>
-0.3 xsl2:
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
- <xsl:output method="html" encoding="UTF-8"/>
- <xsl:template match="TEST">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- </head>
- <body>
- CHARACTERS IN XSLT: ééééééééééé <br /> <xsl:apply-templates/>
- </body>
- </html>
- </xsl:template>
-
-<xsl:template>
-                <xsl:value-of select="."/>
-</xsl:template>
-
-</xsl:stylesheet>
-
-1.0 void importStylesheet(in DOMNode style):
-
-1.1 Import two different stylesheets:
-<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body>
- CHARACTERS IN XSLT: ééééééééééé <br><br>SOURCE XML: &lt;&lt;&lt;&amp;тест&amp;&gt;&gt;&gt;
-</body></html>
-1.2 Import same stylesheet twice:
-<!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">
-<head><title></title></head>
-<body>
-<pre>CHARACTERS IN XSLT: <<<&тест&>>>
-SOURCE XML: <<<&тест&>>>
-</pre>
-</body>
-</html>
-1.3 Import undefined stylesheet:
-****Failure**** (expected exception, instead got result: "undefined")
-1.4 Import undefined stylesheet:
-****Failure**** (expected exception, instead got result: "undefined")
-1.5 Don't import stylesheet:
-Success
-
-2.0 DOMDocumentFragment transformToFragment(in DOMNode source, in DOMDocument output):
-
-2.1 fragment with undefined source:
-****Failure**** (expected exception, instead got result: "undefined")
-2.2 fragment with undefined output document:
-Success
-2.3 use non-DOMDocument output parameter:
-****Failure**** (expected exception, instead got result: "undefined")
-2.4 transform to same fragment twice:
-Success
-2.5 transformed fragment containing only text:
-Success
-2.6 fragment using passed parameters:
-Success
-
-3.0 DOMDocument transformToDocument(in DOMNode source):
-
-3.1 use non-DOMDocument output parameter:
-****Failure**** (expected exception, instead got result: "undefined")
-3.2 transform twice:
-Success
-
-4.0 void setParameter(in DOMString namespaceURI, in DOMString localName, in Value value):
-
-4.1 pass setParameter same localname, different namespaces:
-****Failure**** (expected: "Success" actual: "Failure")
-4.2 pass undefined namespace:
-Success
-4.3 pass setParameter an undefined name:
-****Failure**** (expected exception, instead got result: "undefined")
-4.4 pass unsupported value to setParameter:
-****Failure**** (expected exception, instead got result: "undefined")
-
-5.0 Value getParameter(in DOMString namespaceURI, in DOMString localName):
-
-5.1 pass getParameter an undefined name:
-****Failure**** (expected exception, instead got result: "undefined")
-5.2 pass getParameter a name which has not been set:
-Success
-5.3 verify getParameter actually gets (and set sets):
-Success
-
-6.0 void removeParameter(in DOMString namespaceURI, in DOMString localName):
-
-6.1 pass removeParameter same localname, different namespaces:
-****Failure**** (expected: "Success" actual: "Failure")
-6.2 verify removeParameter actually removes using undefined namespace:
-Success
-6.3 pass removeParameter undefined name:
-Success
-6.4 pass removeParameter a name which has not been set:
-Success
-6.5 verify removeParameter actually removes:
-Success
-
-7.0 void clearParameters():
-
-7.1 verify that clearParameters does:
-Success
-
-8.0 void reset():
-
-8.1 verify that parameters have been cleared:
-Success
-8.2 verify that stylesheet has been cleared:
-Success
-
</del></span></pre></div>
<a id="trunkLayoutTestsfastxslxsltprocesserhtml"></a>
<div class="delfile"><h4>Deleted: trunk/LayoutTests/fast/xsl/xslt-processer.html (19952 => 19953)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xsl/xslt-processer.html        2007-03-03 02:18:43 UTC (rev 19952)
+++ trunk/LayoutTests/fast/xsl/xslt-processer.html        2007-03-04 15:47:21 UTC (rev 19953)
</span><span class="lines">@@ -1,321 +0,0 @@
</span><del>-<html>
-<head>
-<STYLE>
-pre { border:1px solid blue }
-span { font-weight: bold }
-.success { color: green; }
-.failure { color: red; }
-</STYLE>
-</head>
-<body id="body">
-
-<script>
-if (window.layoutTestController)
-        layoutTestController.dumpAsText();
-
-var requester = new XMLHttpRequest();
-var processor = new XSLTProcessor();
-var serializer = new XMLSerializer();
-
-var sectionId = 0;
-var testId = 0;
-
-function addSectionHeader(name) {
-        sectionId++;
-        document.writeln("<br><span>" + sectionId + ".0 " + name + ":</span><br><br>");
-        testId = 0;
-}
-
-function addResultExpectException(name, func) {
-        try {
-                var result = func();
-                addStringResult(testname, "****Failure**** (expected exception, instead got result: \"" + result + "\")", "failure");
-        } catch (e) {
-                // FIXME: probably should check exception type
-                addSuccessResult(testname);
-        }
-}
-
-function addResultExpectValueWhenSerialized(name, value, expectedValue) {
-        var serializedValue;
-        if (value)
-                serializedValue = serializer.serializeToString(value);
-        if (serializedValue == expectedValue)
-                addSuccessResult(name);
-        else
-                addFailureResult(name, expectedValue, serializedValue);
-}
-
-function addResultExpectValue(name, value, expectedValue) {
-        if (value == expectedValue)
-                addSuccessResult(name);
-        else
-                addFailureResult(name, expectedValue, value);
-}
-
-function getXMLDocument(name)
-{
-        requester.open("GET", name, false);
-        requester.send(null);
-        return requester.responseXML;
-}
-
-function addStringResult(name, result, cssClass)
-{
-        testId++;
-        var testNumberString = "" + sectionId + "." + testId
-        var testIdString = "id" + testNumberString;
-        document.writeln("<span>" + testNumberString + " " + name + ":</span>");
-        document.writeln("<pre id=\"" + testIdString + "\" class=\"" + cssClass + "\">@@NO VALUE@@</pre>");
-        document.getElementById(testIdString).firstChild.nodeValue = result;
-}
-
-function addFailureResult(name, expectedValue, actual)
-{
-        addStringResult(name, "****Failure**** (expected: \"" + expectedValue + "\" actual: \"" + actual + "\")", "failure");
-}
-
-function addSuccessResult(name)
-{
-        addStringResult(name, "Success", "success");
-}
-
-function addXMLResult(name, result)
-{
-        var str;
-        if (result)
-                str = serializer.serializeToString(result);
-        addStringResult(name, str);
-}
-
-var xml = getXMLDocument("xslt-text.xml");
-addXMLResult("original xml", xml);
-var xsl1 = getXMLDocument("xslt-text.xsl");
-addXMLResult("xsl1", xsl1);
-var xsl2 = getXMLDocument("resources/xslt-enc.xsl");
-addXMLResult("xsl2", xsl2);
-
-
-
-// 1.0 void importStylesheet(in DOMNode style);
-addSectionHeader("void importStylesheet(in DOMNode style)");
-// 1.1 Import two different stylesheets (last one wins)
-
-processor.importStylesheet(xsl1);
-processor.importStylesheet(xsl2);
-var newXML = processor.transformToDocument(xml);
-addXMLResult("Import two different stylesheets", newXML);
-
-// 1.2 Import same stylesheet twice
-
-processor.reset();
-processor.importStylesheet(xsl1);
-processor.importStylesheet(xsl1);
-
-var newXML = processor.transformToDocument(xml);
-addXMLResult("Import same stylesheet twice", newXML);
-
-// 1.3 Import undefined stylesheet
-
-processor.reset();
-var testname = "Import undefined stylesheet";
-addResultExpectException(testname, function () { return processor.importStylesheet(undefined); } );
-
-// 1.4 Import invalid stylesheet (not wellformed xlst)
-
-processor.reset();
-var testName = "Import invalid stylesheet";
-addResultExpectException(testname, function () { return processor.importStylesheet(xml); } );
-
-// 1.5 Don't import stylesheet
-
-processor.reset();
-var newXML = processor.transformToDocument(xml);
-addResultExpectValueWhenSerialized("Don't import stylesheet", newXML, undefined);
-
-
-
-// 2.0 DOMDocumentFragment transformToFragment(in DOMNode source, in DOMDocument output);
-addSectionHeader("DOMDocumentFragment transformToFragment(in DOMNode source, in DOMDocument output)");
-// 2.1 fragment with undefined source
-
-processor.reset();
-processor.importStylesheet(xsl1);
-var ownerDocument = document.implementation.createDocument("", "test", null);
-var testname = "fragment with undefined source";
-addResultExpectException(testname, function () { return processor.transformToFragment(undefined, ownerDocument); } );
-
-// 2.2 fragment with undefined output document
-
-ownerDocument = document.implementation.createDocument("", "test", null);
-newFragment = processor.transformToFragment(xml, undefined);
-addResultExpectValueWhenSerialized("fragment with undefined output document", newFragment, undefined);
-
-// 2.3 use non-DOMDocument output parameter
-
-var testname = "use non-DOMDocument output parameter";
-addResultExpectException(testname, function () { return processor.transformToFragment(xml, "error"); } );
-
-// 2.4 transform to same fragment twice
-
-ownerDocument = document.implementation.createDocument("", "test", null);
-var secondDocument = document.implementation.createDocument("", "test", null);
-newFragment = processor.transformToFragment(xml, ownerDocument);
-var secondFragment = processor.transformToFragment(xml, secondDocument);
-addResultExpectValueWhenSerialized("transform to same fragment twice", secondFragment, serializer.serializeToString(newFragment));
-
-
-// 2.5 transform to text
-// 2.6 fragment using passed parameters
-var paramXSL = getXMLDocument("resources/xslt-param.xsl");
-var paramXML = getXMLDocument("resources/xslt-param.xml");
-
-var paramProcessor = new XSLTProcessor;
-paramProcessor.importStylesheet(paramXSL);
-paramProcessor.setParameter(null, "param", "SUCCESS");
-
-var ownerDocument = document.implementation.createDocument("", "test", null);
-var fragment = paramProcessor.transformToFragment(paramXML, ownerDocument);
-addResultExpectValueWhenSerialized("transformed fragment containing only text", fragment, "SUCCESS");
-addResultExpectValue("fragment using passed parameters", fragment.firstChild.nodeValue, "SUCCESS");
-
-
-
-// 3.0 DOMDocument transformToDocument(in DOMNode source);
-addSectionHeader("DOMDocument transformToDocument(in DOMNode source)");
-
-// 3.1 document from undefined source
-
-processor.reset();
-processor.importStylesheet(xsl1);
-addResultExpectException("document from undefined source", function () { return processor.transformToDocument(undefined); } );
-
-// 3.2 transform twice
-
-processor.reset();
-processor.importStylesheet(xsl1);
-var newXML = processor.transformToDocument(xml);
-var newerXML = processor.transformToDocument(xml);
-addResultExpectValueWhenSerialized("transform twice", newXML, serializer.serializeToString(newerXML));
-
-
-
-
-// 4.0 void setParameter(in DOMString namespaceURI, in DOMString localName, in Value value);
-addSectionHeader("void setParameter(in DOMString namespaceURI, in DOMString localName, in Value value)");
-processor.reset();
-
-// 4.1 pass setParameter same localname, different namespaces
-processor.setParameter("foo", "foo", "Success");
-processor.setParameter("bar", "foo", "Failure");
-var testname = "pass setParameter same localname, different namespaces";
-addResultExpectValue(testname, processor.getParameter("foo", "foo"), "Success");
-
-// 4.2 pass undefined namespace
-
-processor.setParameter(undefined, "foo", "Success");
-addResultExpectValue("pass undefined namespace", processor.getParameter(undefined, "foo"), "Success");
-
-// 4.3 pass setParameter an undefined name
-
-var testname = "pass setParameter an undefined name";
-addResultExpectException(testname, function () { return processor.setParameter(undefined, undefined , "Success"); } );
-
-// 4.4 pass undefined value
-
-processor.setParameter(undefined, "foo", undefined);
-var testname = "pass undefined value";
-
-
-// 4.5 pass unsupported value to setParameter (object, for instance?)
-
-var testname = "pass unsupported value to setParameter";
-addResultExpectException(testname, function () { return processor.setParameter(undefined, "invalid" , new Array()); } );
-
-
-// 5.0 Value getParameter(in DOMString namespaceURI, in DOMString localName);
-addSectionHeader("Value getParameter(in DOMString namespaceURI, in DOMString localName)");
-
-// 5.1 pass undefined name
-
-var testname = "pass getParameter an undefined name";
-addResultExpectException(testname, function () { return processor.getParameter(undefined, undefined); } );
-
-// 5.2 pass getParameter a name which has not been set
-
-var testname = "pass getParameter a name which has not been set";
-addResultExpectValue(testname, processor.getParameter(undefined, "hasnotbeenset"), undefined);
-
-// 5.3 verify getParameter actually gets (and set sets)
-processor.setParameter(null, "test", "testValue");
-var testname = "verify getParameter actually gets (and set sets)";
-addResultExpectValue(testname, processor.getParameter(null, "test"), "testValue");
-
-
-
-// 6.0 void removeParameter(in DOMString namespaceURI, in DOMString localName);
-addSectionHeader("void removeParameter(in DOMString namespaceURI, in DOMString localName)");
-// 6.1 pass removeParameter same localname, different namespaces
-
-processor.setParameter("foo", "foo", "Success");
-processor.setParameter("bar", "foo", "Failure");
-var testname = "pass removeParameter same localname, different namespaces";
-addResultExpectValue(testname, processor.getParameter("foo", "foo"), "Success");
-
-// 6.2 pass undefined namespace
-
-processor.setParameter(undefined, "test", "testValue");
-processor.removeParameter(undefined, "test");
-var testname = "verify removeParameter actually removes using undefined namespace";        
-addResultExpectValue(testname, processor.getParameter(null, "test"), undefined);
-
-// 6.3 pass removeParameter undefined name
-
-processor.setParameter(undefined, "undefined", "Success");
-processor.removeParameter(undefined, undefined);
-var testname = "pass removeParameter undefined name";
-addResultExpectValue(testname, processor.getParameter(undefined, "undefined"), "Success");
-
-// 6.4 pass removeParameter a name which has not been set
-
-processor.removeParameter(undefined, "neverbeensetforremove");
-addResultExpectValue("pass removeParameter a name which has not been set", "Success", "Success");
-
-// 6.5 verify removeParameter actually removes
-processor.setParameter(null, "test", "testValue");
-processor.removeParameter(null, "test");
-var testname = "verify removeParameter actually removes";
-addResultExpectValue(testname, processor.getParameter(null, "test"), undefined);
-
-
-
-// 7.0 void clearParameters();
-addSectionHeader("void clearParameters()");
-
-// 7.1 call, verify that parameters have been cleared
-processor.setParameter(null, "test", "testValue");
-processor.clearParameters();
-var testname = "verify that clearParameters does";
-addResultExpectValue(testname, processor.getParameter(null, "test"), undefined);
-
-
-// 8.0 void reset();
-addSectionHeader("void reset()");
-processor = new XSLTProcessor();
-processor.importStylesheet(xsl1);
-processor.setParameter(null, "test", "testValue");
-processor.reset();
-
-// 8.1 call, verify that parameters are cleared after reset()
-var testname = "verify that parameters have been cleared";
-addResultExpectValue(testname, processor.getParameter(null, "test"), undefined);
-
-// 8.2 call, verify that stylesheet has been cleared after reset()
-var testname = "verify that stylesheet has been cleared";
-var resultDocument = processor.transformToDocument(xml);
-addResultExpectValueWhenSerialized(testname, resultDocument, undefined);
-
-</script>
-
-</body>
-</html>
</del><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestsfastxslxsltprocessorexpectedtxtfromrev19952trunkLayoutTestsfastxslxsltprocesserexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/fast/xsl/xslt-processor-expected.txt (from rev 19952, trunk/LayoutTests/fast/xsl/xslt-processer-expected.txt) (0 => 19953)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xsl/xslt-processor-expected.txt         (rev 0)
+++ trunk/LayoutTests/fast/xsl/xslt-processor-expected.txt        2007-03-04 15:47:21 UTC (rev 19953)
</span><span class="lines">@@ -0,0 +1,124 @@
</span><ins>+0.1 original xml:
+<?xml-stylesheet type="text/xsl" href="xslt-text.xsl"?><TEST>SOURCE XML: &lt;&lt;&lt;&amp;тест&amp;&gt;&gt;&gt;</TEST>
+0.2 xsl1:
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+
+<xsl:output method="text" encoding="KOI8-R"/>
+<xsl:template match="TEST">CHARACTERS IN XSLT: &lt;&lt;&lt;&amp;тест&amp;&gt;&gt;&gt;
+<xsl:apply-templates/><xsl:text>
+</xsl:text></xsl:template>
+
+<xsl:template>
+                <xsl:value-of select="."/>
+</xsl:template>
+
+</xsl:stylesheet>
+0.3 xsl2:
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+ <xsl:output method="html" encoding="UTF-8"/>
+ <xsl:template match="TEST">
+ <html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ </head>
+ <body>
+ CHARACTERS IN XSLT: ééééééééééé <br /> <xsl:apply-templates/>
+ </body>
+ </html>
+ </xsl:template>
+
+<xsl:template>
+                <xsl:value-of select="."/>
+</xsl:template>
+
+</xsl:stylesheet>
+
+1.0 void importStylesheet(in DOMNode style):
+
+1.1 Import two different stylesheets:
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body>
+ CHARACTERS IN XSLT: ééééééééééé <br><br>SOURCE XML: &lt;&lt;&lt;&amp;тест&amp;&gt;&gt;&gt;
+</body></html>
+1.2 Import same stylesheet twice:
+<!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">
+<head><title></title></head>
+<body>
+<pre>CHARACTERS IN XSLT: &lt;&lt;&lt;&amp;тест&amp;&gt;&gt;&gt;
+SOURCE XML: &lt;&lt;&lt;&amp;тест&amp;&gt;&gt;&gt;
+</pre>
+</body>
+</html>
+1.3 Import undefined stylesheet:
+****Failure**** (expected exception, instead got result: "undefined")
+1.4 Import undefined stylesheet:
+****Failure**** (expected exception, instead got result: "undefined")
+1.5 Don't import stylesheet:
+Success
+
+2.0 DOMDocumentFragment transformToFragment(in DOMNode source, in DOMDocument output):
+
+2.1 fragment with undefined source:
+****Failure**** (expected exception, instead got result: "undefined")
+2.2 fragment with undefined output document:
+Success
+2.3 use non-DOMDocument output parameter:
+****Failure**** (expected exception, instead got result: "undefined")
+2.4 transform to same fragment twice:
+Success
+2.5 transformed fragment containing only text:
+Success
+2.6 fragment using passed parameters:
+Success
+
+3.0 DOMDocument transformToDocument(in DOMNode source):
+
+3.1 use non-DOMDocument output parameter:
+****Failure**** (expected exception, instead got result: "undefined")
+3.2 transform twice:
+Success
+
+4.0 void setParameter(in DOMString namespaceURI, in DOMString localName, in Value value):
+
+4.1 pass setParameter same localname, different namespaces:
+****Failure**** (expected: "Success" actual: "Failure")
+4.2 pass undefined namespace:
+Success
+4.3 pass setParameter an undefined name:
+****Failure**** (expected exception, instead got result: "undefined")
+4.4 pass unsupported value to setParameter:
+****Failure**** (expected exception, instead got result: "undefined")
+
+5.0 Value getParameter(in DOMString namespaceURI, in DOMString localName):
+
+5.1 pass getParameter an undefined name:
+****Failure**** (expected exception, instead got result: "undefined")
+5.2 pass getParameter a name which has not been set:
+Success
+5.3 verify getParameter actually gets (and set sets):
+Success
+
+6.0 void removeParameter(in DOMString namespaceURI, in DOMString localName):
+
+6.1 pass removeParameter same localname, different namespaces:
+****Failure**** (expected: "Success" actual: "Failure")
+6.2 verify removeParameter actually removes using undefined namespace:
+Success
+6.3 pass removeParameter undefined name:
+Success
+6.4 pass removeParameter a name which has not been set:
+Success
+6.5 verify removeParameter actually removes:
+Success
+
+7.0 void clearParameters():
+
+7.1 verify that clearParameters does:
+Success
+
+8.0 void reset():
+
+8.1 verify that parameters have been cleared:
+Success
+8.2 verify that stylesheet has been cleared:
+Success
+
</ins></span></pre></div>
<a id="trunkLayoutTestsfastxslxsltprocessorexpectedtxt"></a>
<div class="propset"><h4>Property changes: trunk/LayoutTests/fast/xsl/xslt-processor-expected.txt</h4>
<pre class="diff"><span>
<span class="cx">Name: allow-tabs
</span><span class="cx"> + 1
</span><span class="cx">Name: svn:eol-style
</span><span class="cx"> + native
</span></span></pre></div>
<a id="trunkLayoutTestsfastxslxsltprocessorhtmlfromrev19952trunkLayoutTestsfastxslxsltprocesserhtml"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/fast/xsl/xslt-processor.html (from rev 19952, trunk/LayoutTests/fast/xsl/xslt-processer.html) (0 => 19953)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/xsl/xslt-processor.html         (rev 0)
+++ trunk/LayoutTests/fast/xsl/xslt-processor.html        2007-03-04 15:47:21 UTC (rev 19953)
</span><span class="lines">@@ -0,0 +1,321 @@
</span><ins>+<html>
+<head>
+<STYLE>
+pre { border:1px solid blue }
+span { font-weight: bold }
+.success { color: green; }
+.failure { color: red; }
+</STYLE>
+</head>
+<body id="body">
+
+<script>
+if (window.layoutTestController)
+        layoutTestController.dumpAsText();
+
+var requester = new XMLHttpRequest();
+var processor = new XSLTProcessor();
+var serializer = new XMLSerializer();
+
+var sectionId = 0;
+var testId = 0;
+
+function addSectionHeader(name) {
+        sectionId++;
+        document.writeln("<br><span>" + sectionId + ".0 " + name + ":</span><br><br>");
+        testId = 0;
+}
+
+function addResultExpectException(name, func) {
+        try {
+                var result = func();
+                addStringResult(testname, "****Failure**** (expected exception, instead got result: \"" + result + "\")", "failure");
+        } catch (e) {
+                // FIXME: probably should check exception type
+                addSuccessResult(testname);
+        }
+}
+
+function addResultExpectValueWhenSerialized(name, value, expectedValue) {
+        var serializedValue;
+        if (value)
+                serializedValue = serializer.serializeToString(value);
+        if (serializedValue == expectedValue)
+                addSuccessResult(name);
+        else
+                addFailureResult(name, expectedValue, serializedValue);
+}
+
+function addResultExpectValue(name, value, expectedValue) {
+        if (value == expectedValue)
+                addSuccessResult(name);
+        else
+                addFailureResult(name, expectedValue, value);
+}
+
+function getXMLDocument(name)
+{
+        requester.open("GET", name, false);
+        requester.send(null);
+        return requester.responseXML;
+}
+
+function addStringResult(name, result, cssClass)
+{
+        testId++;
+        var testNumberString = "" + sectionId + "." + testId
+        var testIdString = "id" + testNumberString;
+        document.writeln("<span>" + testNumberString + " " + name + ":</span>");
+        document.writeln("<pre id=\"" + testIdString + "\" class=\"" + cssClass + "\">@@NO VALUE@@</pre>");
+        document.getElementById(testIdString).firstChild.nodeValue = result;
+}
+
+function addFailureResult(name, expectedValue, actual)
+{
+        addStringResult(name, "****Failure**** (expected: \"" + expectedValue + "\" actual: \"" + actual + "\")", "failure");
+}
+
+function addSuccessResult(name)
+{
+        addStringResult(name, "Success", "success");
+}
+
+function addXMLResult(name, result)
+{
+        var str;
+        if (result)
+                str = serializer.serializeToString(result);
+        addStringResult(name, str);
+}
+
+var xml = getXMLDocument("xslt-text.xml");
+addXMLResult("original xml", xml);
+var xsl1 = getXMLDocument("xslt-text.xsl");
+addXMLResult("xsl1", xsl1);
+var xsl2 = getXMLDocument("resources/xslt-enc.xsl");
+addXMLResult("xsl2", xsl2);
+
+
+
+// 1.0 void importStylesheet(in DOMNode style);
+addSectionHeader("void importStylesheet(in DOMNode style)");
+// 1.1 Import two different stylesheets (last one wins)
+
+processor.importStylesheet(xsl1);
+processor.importStylesheet(xsl2);
+var newXML = processor.transformToDocument(xml);
+addXMLResult("Import two different stylesheets", newXML);
+
+// 1.2 Import same stylesheet twice
+
+processor.reset();
+processor.importStylesheet(xsl1);
+processor.importStylesheet(xsl1);
+
+var newXML = processor.transformToDocument(xml);
+addXMLResult("Import same stylesheet twice", newXML);
+
+// 1.3 Import undefined stylesheet
+
+processor.reset();
+var testname = "Import undefined stylesheet";
+addResultExpectException(testname, function () { return processor.importStylesheet(undefined); } );
+
+// 1.4 Import invalid stylesheet (not wellformed xlst)
+
+processor.reset();
+var testName = "Import invalid stylesheet";
+addResultExpectException(testname, function () { return processor.importStylesheet(xml); } );
+
+// 1.5 Don't import stylesheet
+
+processor.reset();
+var newXML = processor.transformToDocument(xml);
+addResultExpectValueWhenSerialized("Don't import stylesheet", newXML, undefined);
+
+
+
+// 2.0 DOMDocumentFragment transformToFragment(in DOMNode source, in DOMDocument output);
+addSectionHeader("DOMDocumentFragment transformToFragment(in DOMNode source, in DOMDocument output)");
+// 2.1 fragment with undefined source
+
+processor.reset();
+processor.importStylesheet(xsl1);
+var ownerDocument = document.implementation.createDocument("", "test", null);
+var testname = "fragment with undefined source";
+addResultExpectException(testname, function () { return processor.transformToFragment(undefined, ownerDocument); } );
+
+// 2.2 fragment with undefined output document
+
+ownerDocument = document.implementation.createDocument("", "test", null);
+newFragment = processor.transformToFragment(xml, undefined);
+addResultExpectValueWhenSerialized("fragment with undefined output document", newFragment, undefined);
+
+// 2.3 use non-DOMDocument output parameter
+
+var testname = "use non-DOMDocument output parameter";
+addResultExpectException(testname, function () { return processor.transformToFragment(xml, "error"); } );
+
+// 2.4 transform to same fragment twice
+
+ownerDocument = document.implementation.createDocument("", "test", null);
+var secondDocument = document.implementation.createDocument("", "test", null);
+newFragment = processor.transformToFragment(xml, ownerDocument);
+var secondFragment = processor.transformToFragment(xml, secondDocument);
+addResultExpectValueWhenSerialized("transform to same fragment twice", secondFragment, serializer.serializeToString(newFragment));
+
+
+// 2.5 transform to text
+// 2.6 fragment using passed parameters
+var paramXSL = getXMLDocument("resources/xslt-param.xsl");
+var paramXML = getXMLDocument("resources/xslt-param.xml");
+
+var paramProcessor = new XSLTProcessor;
+paramProcessor.importStylesheet(paramXSL);
+paramProcessor.setParameter(null, "param", "SUCCESS");
+
+var ownerDocument = document.implementation.createDocument("", "test", null);
+var fragment = paramProcessor.transformToFragment(paramXML, ownerDocument);
+addResultExpectValueWhenSerialized("transformed fragment containing only text", fragment, "SUCCESS");
+addResultExpectValue("fragment using passed parameters", fragment.firstChild.nodeValue, "SUCCESS");
+
+
+
+// 3.0 DOMDocument transformToDocument(in DOMNode source);
+addSectionHeader("DOMDocument transformToDocument(in DOMNode source)");
+
+// 3.1 document from undefined source
+
+processor.reset();
+processor.importStylesheet(xsl1);
+addResultExpectException("document from undefined source", function () { return processor.transformToDocument(undefined); } );
+
+// 3.2 transform twice
+
+processor.reset();
+processor.importStylesheet(xsl1);
+var newXML = processor.transformToDocument(xml);
+var newerXML = processor.transformToDocument(xml);
+addResultExpectValueWhenSerialized("transform twice", newXML, serializer.serializeToString(newerXML));
+
+
+
+
+// 4.0 void setParameter(in DOMString namespaceURI, in DOMString localName, in Value value);
+addSectionHeader("void setParameter(in DOMString namespaceURI, in DOMString localName, in Value value)");
+processor.reset();
+
+// 4.1 pass setParameter same localname, different namespaces
+processor.setParameter("foo", "foo", "Success");
+processor.setParameter("bar", "foo", "Failure");
+var testname = "pass setParameter same localname, different namespaces";
+addResultExpectValue(testname, processor.getParameter("foo", "foo"), "Success");
+
+// 4.2 pass undefined namespace
+
+processor.setParameter(undefined, "foo", "Success");
+addResultExpectValue("pass undefined namespace", processor.getParameter(undefined, "foo"), "Success");
+
+// 4.3 pass setParameter an undefined name
+
+var testname = "pass setParameter an undefined name";
+addResultExpectException(testname, function () { return processor.setParameter(undefined, undefined , "Success"); } );
+
+// 4.4 pass undefined value
+
+processor.setParameter(undefined, "foo", undefined);
+var testname = "pass undefined value";
+
+
+// 4.5 pass unsupported value to setParameter (object, for instance?)
+
+var testname = "pass unsupported value to setParameter";
+addResultExpectException(testname, function () { return processor.setParameter(undefined, "invalid" , new Array()); } );
+
+
+// 5.0 Value getParameter(in DOMString namespaceURI, in DOMString localName);
+addSectionHeader("Value getParameter(in DOMString namespaceURI, in DOMString localName)");
+
+// 5.1 pass undefined name
+
+var testname = "pass getParameter an undefined name";
+addResultExpectException(testname, function () { return processor.getParameter(undefined, undefined); } );
+
+// 5.2 pass getParameter a name which has not been set
+
+var testname = "pass getParameter a name which has not been set";
+addResultExpectValue(testname, processor.getParameter(undefined, "hasnotbeenset"), undefined);
+
+// 5.3 verify getParameter actually gets (and set sets)
+processor.setParameter(null, "test", "testValue");
+var testname = "verify getParameter actually gets (and set sets)";
+addResultExpectValue(testname, processor.getParameter(null, "test"), "testValue");
+
+
+
+// 6.0 void removeParameter(in DOMString namespaceURI, in DOMString localName);
+addSectionHeader("void removeParameter(in DOMString namespaceURI, in DOMString localName)");
+// 6.1 pass removeParameter same localname, different namespaces
+
+processor.setParameter("foo", "foo", "Success");
+processor.setParameter("bar", "foo", "Failure");
+var testname = "pass removeParameter same localname, different namespaces";
+addResultExpectValue(testname, processor.getParameter("foo", "foo"), "Success");
+
+// 6.2 pass undefined namespace
+
+processor.setParameter(undefined, "test", "testValue");
+processor.removeParameter(undefined, "test");
+var testname = "verify removeParameter actually removes using undefined namespace";        
+addResultExpectValue(testname, processor.getParameter(null, "test"), undefined);
+
+// 6.3 pass removeParameter undefined name
+
+processor.setParameter(undefined, "undefined", "Success");
+processor.removeParameter(undefined, undefined);
+var testname = "pass removeParameter undefined name";
+addResultExpectValue(testname, processor.getParameter(undefined, "undefined"), "Success");
+
+// 6.4 pass removeParameter a name which has not been set
+
+processor.removeParameter(undefined, "neverbeensetforremove");
+addResultExpectValue("pass removeParameter a name which has not been set", "Success", "Success");
+
+// 6.5 verify removeParameter actually removes
+processor.setParameter(null, "test", "testValue");
+processor.removeParameter(null, "test");
+var testname = "verify removeParameter actually removes";
+addResultExpectValue(testname, processor.getParameter(null, "test"), undefined);
+
+
+
+// 7.0 void clearParameters();
+addSectionHeader("void clearParameters()");
+
+// 7.1 call, verify that parameters have been cleared
+processor.setParameter(null, "test", "testValue");
+processor.clearParameters();
+var testname = "verify that clearParameters does";
+addResultExpectValue(testname, processor.getParameter(null, "test"), undefined);
+
+
+// 8.0 void reset();
+addSectionHeader("void reset()");
+processor = new XSLTProcessor();
+processor.importStylesheet(xsl1);
+processor.setParameter(null, "test", "testValue");
+processor.reset();
+
+// 8.1 call, verify that parameters are cleared after reset()
+var testname = "verify that parameters have been cleared";
+addResultExpectValue(testname, processor.getParameter(null, "test"), undefined);
+
+// 8.2 call, verify that stylesheet has been cleared after reset()
+var testname = "verify that stylesheet has been cleared";
+var resultDocument = processor.transformToDocument(xml);
+addResultExpectValueWhenSerialized(testname, resultDocument, undefined);
+
+</script>
+
+</body>
+</html>
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkLayoutTestsfastxslxsltprocessorhtml"></a>
<div class="propset"><h4>Property changes: trunk/LayoutTests/fast/xsl/xslt-processor.html</h4>
<pre class="diff"><span>
<span class="cx">Name: allow-tabs
</span><span class="cx"> + 1
</span><span class="cx">Name: svn:mime-type
</span><span class="cx"> + text/html
</span><span class="cx">Name: svn:eol-style
</span><span class="cx"> + native
</span></span></pre>
</div>
</div>
</body>
</html>