summaryrefslogtreecommitdiff
path: root/test/namespaces
diff options
context:
space:
mode:
authorMike Hommey <glandium@debian.org>2006-01-31 19:25:18 +0100
committerMike Hommey <glandium@debian.org>2006-01-31 19:25:18 +0100
commitc5d565931c4823dc8f62fffcb65aecfec516f7b9 (patch)
tree9550b0b41e973d707cbbca74333c1b05ab89e5ee /test/namespaces
parent0fd83af441e251fc23fc1af7959fd6ecfa105fe1 (diff)
downloadlibxml2-upstream/2.6.23.dfsg.2.tar.gz
Removing tests and resultsupstream/2.6.23.dfsg.2
Diffstat (limited to 'test/namespaces')
-rw-r--r--test/namespaces/.memdump4
-rw-r--r--test/namespaces/err_0.xml1
-rw-r--r--test/namespaces/err_1.xml1
-rw-r--r--test/namespaces/err_10.xml1
-rw-r--r--test/namespaces/err_11.xml1
-rw-r--r--test/namespaces/err_2.xml1
-rw-r--r--test/namespaces/err_3.xml1
-rw-r--r--test/namespaces/err_4.xml1
-rw-r--r--test/namespaces/err_5.xml1
-rw-r--r--test/namespaces/err_6.xml1
-rw-r--r--test/namespaces/err_7.xml1
-rw-r--r--test/namespaces/err_8.xml1
-rw-r--r--test/namespaces/err_9.xml2
-rw-r--r--test/namespaces/reconcile/tests-to-c.xsl275
-rw-r--r--test/namespaces/reconcile/tests.xml249
15 files changed, 0 insertions, 541 deletions
diff --git a/test/namespaces/.memdump b/test/namespaces/.memdump
deleted file mode 100644
index 985efa7..0000000
--- a/test/namespaces/.memdump
+++ /dev/null
@@ -1,4 +0,0 @@
- 11:53:33 AM
-
- MEMORY ALLOCATED : 0, MAX was 18380
-BLOCK NUMBER SIZE TYPE
diff --git a/test/namespaces/err_0.xml b/test/namespaces/err_0.xml
deleted file mode 100644
index 50bdd32..0000000
--- a/test/namespaces/err_0.xml
+++ /dev/null
@@ -1 +0,0 @@
-<foo xmlnsbar="1"/>
diff --git a/test/namespaces/err_1.xml b/test/namespaces/err_1.xml
deleted file mode 100644
index eb6f43b..0000000
--- a/test/namespaces/err_1.xml
+++ /dev/null
@@ -1 +0,0 @@
-<foo xmlns:="http://example.com/"/>
diff --git a/test/namespaces/err_10.xml b/test/namespaces/err_10.xml
deleted file mode 100644
index cf36261..0000000
--- a/test/namespaces/err_10.xml
+++ /dev/null
@@ -1 +0,0 @@
-<tst xmlns="http://example.com/" xmlns="http://example.com/"/>
diff --git a/test/namespaces/err_11.xml b/test/namespaces/err_11.xml
deleted file mode 100644
index 9d81939..0000000
--- a/test/namespaces/err_11.xml
+++ /dev/null
@@ -1 +0,0 @@
-<tst xmlns:a="http://example.com/" xmlns:a="http://example.com/"/>
diff --git a/test/namespaces/err_2.xml b/test/namespaces/err_2.xml
deleted file mode 100644
index 9fd51b3..0000000
--- a/test/namespaces/err_2.xml
+++ /dev/null
@@ -1 +0,0 @@
-<:/>
diff --git a/test/namespaces/err_3.xml b/test/namespaces/err_3.xml
deleted file mode 100644
index 3d4d439..0000000
--- a/test/namespaces/err_3.xml
+++ /dev/null
@@ -1 +0,0 @@
-<:foo/>
diff --git a/test/namespaces/err_4.xml b/test/namespaces/err_4.xml
deleted file mode 100644
index 9dc294e..0000000
--- a/test/namespaces/err_4.xml
+++ /dev/null
@@ -1 +0,0 @@
-<f: xmlns:f="http://example.com/foo"/>
diff --git a/test/namespaces/err_5.xml b/test/namespaces/err_5.xml
deleted file mode 100644
index 5943c11..0000000
--- a/test/namespaces/err_5.xml
+++ /dev/null
@@ -1 +0,0 @@
-<f:a: xmlns:f="http://example.com/foo"/>
diff --git a/test/namespaces/err_6.xml b/test/namespaces/err_6.xml
deleted file mode 100644
index e3eb3b2..0000000
--- a/test/namespaces/err_6.xml
+++ /dev/null
@@ -1 +0,0 @@
-<f:a:b xmlns:f="http://example.com/foo"/>
diff --git a/test/namespaces/err_7.xml b/test/namespaces/err_7.xml
deleted file mode 100644
index 5bbe235..0000000
--- a/test/namespaces/err_7.xml
+++ /dev/null
@@ -1 +0,0 @@
-<f:foo/>
diff --git a/test/namespaces/err_8.xml b/test/namespaces/err_8.xml
deleted file mode 100644
index 8321da2..0000000
--- a/test/namespaces/err_8.xml
+++ /dev/null
@@ -1 +0,0 @@
-<tst xmlns:xml="http://example.com/"/>
diff --git a/test/namespaces/err_9.xml b/test/namespaces/err_9.xml
deleted file mode 100644
index 4478c60..0000000
--- a/test/namespaces/err_9.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-<tst xmlns:a="http://example.com/" xmlns:b="http://example.com/"
- a:err="1" b:err="2"/>
diff --git a/test/namespaces/reconcile/tests-to-c.xsl b/test/namespaces/reconcile/tests-to-c.xsl
deleted file mode 100644
index 9a0d1c6..0000000
--- a/test/namespaces/reconcile/tests-to-c.xsl
+++ /dev/null
@@ -1,275 +0,0 @@
-<?xml version="1.0"?>
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
- <xsl:output method="text"/>
-
- <xsl:template match="/">
- <xsl:text><![CDATA[
-#include <libxml/parser.h>
-#include <libxml/tree.h>
-#include <libxml/xpath.h>
-#include <libxml/xpathInternals.h>
-]]>
-</xsl:text>
- <xsl:call-template name="serializer"/>
- <xsl:apply-templates select="tests/test"/>
- <xsl:text>
-
-int main(int argc, char **argv) {&#xA;</xsl:text>
- <xsl:apply-templates select="tests/test" mode="call"/>
- <xsl:text>
- /* printf("finished.\n"); */
- return (0);
-}
-</xsl:text>
- </xsl:template>
-
- <xsl:template match="tests/test" mode="call">
- <xsl:text> nsTest_</xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text>();&#xA;</xsl:text>
- </xsl:template>
-
- <xsl:template name="xml-text">
- <xsl:param name="text"/>
- <xsl:call-template name="replace-string">
- <!-- Substitute #10 for " -->
- <xsl:with-param name="from" select="'&#10;'"/>
- <xsl:with-param name="to" select="'&quot;&#10;&quot;'"/>
- <xsl:with-param name="text">
- <xsl:call-template name="replace-string">
- <!-- Substitute " for \" -->
- <xsl:with-param name="from" select="'&quot;'"/>
- <xsl:with-param name="to" select="'\&quot;'"/>
- <xsl:with-param name="text">
- <xsl:call-template name="replace-string">
- <!-- Remove tabs. -->
- <xsl:with-param name="from" select="'&#9;'"/>
- <xsl:with-param name="to" select="''"/>
- <xsl:with-param name="text" select="$text"/>
- </xsl:call-template>
- </xsl:with-param>
- </xsl:call-template>
- </xsl:with-param>
- </xsl:call-template>
-
- </xsl:template>
-
- <xsl:template match="doc" mode="define">
- <xsl:text> xmlDocPtr </xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text>;&#xA;</xsl:text>
- <xsl:text> const char * </xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text>_str = "</xsl:text>
- <xsl:call-template name="xml-text">
- <xsl:with-param name="text" select="."/>
- </xsl:call-template>
- <xsl:text>";&#xA;</xsl:text>
- </xsl:template>
-
- <xsl:template match="expected" mode="define">
- <xsl:text> const char * </xsl:text>
- <xsl:text>exp_str = "</xsl:text>
- <xsl:call-template name="xml-text">
- <xsl:with-param name="text" select="."/>
- </xsl:call-template>
- <xsl:text>";&#xA;</xsl:text>
- </xsl:template>
-
- <xsl:template match="doc">
- <xsl:text> </xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text> = xmlReadDoc(BAD_CAST </xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text>_str, NULL, NULL, 0);&#xA;</xsl:text>
-
- <xsl:apply-templates select="following-sibling::*[1]"/>
-
- <xsl:text> xmlFreeDoc(</xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text>);&#xA;</xsl:text>
- </xsl:template>
-
- <xsl:template match="xpath">
- </xsl:template>
-
- <xsl:template match="var" mode="define">
- <xsl:text> xmlNodePtr </xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text>;&#xA;</xsl:text>
- </xsl:template>
-
- <xsl:template match="var">
- <xsl:if test="xpath">
- <!-- Create XPath context. -->
- <xsl:text> /* Selecting node "</xsl:text><xsl:value-of select="@name"/><xsl:text>". */&#xA;</xsl:text>
- <xsl:text> xp = xmlXPathNewContext(</xsl:text>
- <xsl:value-of select="xpath/@doc"/>
- <xsl:text>);&#xA;</xsl:text>
- <!-- Register namespaces. -->
- <xsl:for-each select="xpath/reg-ns">
- <xsl:text> xmlXPathRegisterNs(xp, BAD_CAST "</xsl:text>
- <xsl:value-of select="@prefix"/>
- <xsl:text>", BAD_CAST "</xsl:text>
- <xsl:value-of select="@ns"/>
- <xsl:text>");&#xA;</xsl:text>
- </xsl:for-each>
- <!-- Evaluate. -->
- <xsl:text> </xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text> = nsSelectNode(xp, "</xsl:text>
- <xsl:value-of select="xpath/@select-node"/>
- <xsl:text>");&#xA;</xsl:text>
- <xsl:text> xmlXPathFreeContext(xp);&#xA;</xsl:text>
- </xsl:if>
- <xsl:apply-templates select="following-sibling::*[1]"/>
- </xsl:template>
-
- <xsl:template match="reconcile-ns">
- <xsl:text> /* Reconcile node "</xsl:text><xsl:value-of select="@ref"/><xsl:text>". */&#xA;</xsl:text>
- <xsl:text> xmlDOMWrapReconcileNamespaces(NULL, </xsl:text>
- <xsl:value-of select="@node"/>
- <xsl:text>, 0);&#xA;</xsl:text>
- <xsl:apply-templates select="following-sibling::*[1]"/>
- </xsl:template>
-
- <xsl:template match="remove">
- <xsl:text> xmlDOMWrapRemoveNode(NULL, </xsl:text>
- <xsl:value-of select="@node"/>
- <xsl:text>->doc, </xsl:text>
- <xsl:value-of select="@node"/>
- <xsl:text>, 0);&#xA;</xsl:text>
- <xsl:apply-templates select="following-sibling::*[1]"/>
- </xsl:template>
-
- <xsl:template match="adopt">
- <xsl:text> /* Adopt "</xsl:text><xsl:value-of select="@node"/><xsl:text>". */&#xA;</xsl:text>
- <xsl:text> xmlDOMWrapAdoptNode(NULL, </xsl:text>
- <xsl:value-of select="@node"/>
- <xsl:text>->doc, </xsl:text>
- <xsl:value-of select="@node"/>
- <xsl:text>, </xsl:text>
- <xsl:value-of select="@dest-doc"/>
- <xsl:text>, </xsl:text>
- <xsl:choose>
- <xsl:when test="@dest-parent">
- <xsl:value-of select="@dest-parent"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>NULL</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- <xsl:text>, 0);&#xA;</xsl:text>
- <xsl:apply-templates select="following-sibling::*[1]"/>
- </xsl:template>
-
- <xsl:template match="append-child">
- <xsl:text> xmlAddChild(</xsl:text>
- <xsl:value-of select="@parent"/>
- <xsl:text>, </xsl:text>
- <xsl:value-of select="@child"/>
- <xsl:text>);&#xA;</xsl:text>
- <xsl:apply-templates select="following-sibling::*[1]"/>
- </xsl:template>
-
- <xsl:template match="expected">
- <xsl:text> /* Serialize "</xsl:text><xsl:value-of select="@doc"/><xsl:text>". */&#xA;</xsl:text>
- <xsl:text> result_str = nsSerializeNode(xmlDocGetRootElement(</xsl:text>
- <xsl:value-of select="@doc"/>
- <xsl:text>));&#xA;</xsl:text>
- <xsl:text> /* Compare result. */
- if (! xmlStrEqual(BAD_CAST result_str, BAD_CAST exp_str)) {
- printf("FAILED\n");
- printf("%s\n", (const char *) result_str);
- printf("- - -\n");
- printf("Expected:\n%s\n", exp_str);
- printf("= = =\n");
- }
- xmlFree(result_str);&#xA;</xsl:text>
- </xsl:template>
-
- <!--********
- * TEST *
- ********-->
- <xsl:template match="test">
- <xsl:text>void nsTest_</xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text>(void) {
- xmlChar * result_str;
- xmlXPathContextPtr xp;
- int memory;&#xA;</xsl:text>
- <xsl:apply-templates select="*" mode="define"/>
- <xsl:text>
- memory = xmlMemUsed();
- xmlInitParser();&#xA;&#xA;</xsl:text>
- <xsl:apply-templates select="child::*[1]"/>
- <xsl:text>
- xmlCleanupParser();
- memory = xmlMemUsed() - memory;
-
- if (memory != 0) {
- printf("## '%s' MEMORY leak: %d\n", "</xsl:text>
- <xsl:value-of select="@name"/>
- <xsl:text>", memory);
- }
-}
-</xsl:text>
- </xsl:template>
-
- <xsl:template name="serializer">
- <xsl:text>
-
-xmlChar * nsSerializeNode(xmlNodePtr node) {
- xmlChar * ret;
-
- xmlOutputBufferPtr buf;
- buf = xmlAllocOutputBuffer(NULL);
- xmlNodeDumpOutput(buf, node->doc, node, 0, 0, NULL);
- xmlOutputBufferFlush(buf);
- ret = (xmlChar *) buf->buffer->content;
- buf->buffer->content = NULL;
- (void) xmlOutputBufferClose(buf);
- return (ret);
-}
-
-xmlNodePtr nsSelectNode(xmlXPathContextPtr xp, const char * xpath) {
- xmlXPathObjectPtr xpres;
- xmlNodePtr ret;
-
- xpres = xmlXPathEval(BAD_CAST xpath, xp);
- ret = xpres->nodesetval->nodeTab[0];
- xmlXPathFreeObject(xpres);
- return (ret);
-}
-
-</xsl:text>
- </xsl:template>
-
- <xsl:template name="replace-string">
- <xsl:param name="text"/>
- <xsl:param name="from"/>
- <xsl:param name="to"/>
-
- <xsl:choose>
- <xsl:when test="contains($text, $from)">
-
- <xsl:variable name="before" select="substring-before($text, $from)"/>
- <xsl:variable name="after" select="substring-after($text, $from)"/>
- <xsl:variable name="prefix" select="concat($before, $to)"/>
-
- <xsl:value-of select="$before"/>
- <xsl:value-of select="$to"/>
- <xsl:call-template name="replace-string">
- <xsl:with-param name="text" select="$after"/>
- <xsl:with-param name="from" select="$from"/>
- <xsl:with-param name="to" select="$to"/>
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$text"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
-
-</xsl:stylesheet>
diff --git a/test/namespaces/reconcile/tests.xml b/test/namespaces/reconcile/tests.xml
deleted file mode 100644
index c6f8c54..0000000
--- a/test/namespaces/reconcile/tests.xml
+++ /dev/null
@@ -1,249 +0,0 @@
-<?xml version="1.0"?>
-<tests>
- <test name="adopt_recon_default">
-
- <doc name="doc1"><![CDATA[<p1 xmlns="urn:test:AAA"><a/></p1>]]></doc>
- <doc name="doc2"><![CDATA[<p1 xmlns="urn:test:BBB"><b/></p1>]]></doc>
- <doc name="doc3"><![CDATA[<p2 xmlns="urn:test:ZZZ"/>]]></doc>
- <var name="a">
- <xpath doc="doc1" select-node="/a:p1/a:a">
- <reg-ns prefix="a" ns="urn:test:AAA"/>
- </xpath>
- </var>
- <var name="b" >
- <xpath doc="doc2" select-node="/b:p1/b:b">
- <reg-ns prefix="b" ns="urn:test:BBB"/>
- </xpath>
- </var>
- <var name="p2">
- <xpath doc="doc3" select-node="/z:p2">
- <reg-ns prefix="z" ns="urn:test:ZZZ"/>
- </xpath>
- </var>
-
- <remove node="a"/>
- <adopt dest-doc="doc3" node="a"/>
- <append-child parent="p2" child="a"/>
-
- <!-- This time without a previous removing. -->
- <adopt dest-doc="doc3" node="b"/>
- <append-child parent="p2" child="b"/>
-
- <reconcile-ns node="p2"/>
- <expected doc="doc3"><![CDATA[<p2 xmlns="urn:test:ZZZ"><a xmlns="urn:test:AAA"/><b xmlns="urn:test:BBB"/></p2>]]></expected>
- </test>
-
- <test name="adopt_recon">
- <doc name="doc1"><![CDATA[<a:p1 xmlns:a="urn:test:AAA"><a:a/></a:p1>]]></doc>
- <doc name="doc2"><![CDATA[<a:p2 xmlns:a="urn:test:AAA"/>]]></doc>
- <var name="a">
- <xpath doc="doc1" select-node="/a:p1/a:a">
- <reg-ns prefix="a" ns="urn:test:AAA"/>
- </xpath>
- </var>
- <var name="p2">
- <xpath doc="doc2" select-node="/a:p2">
- <reg-ns prefix="a" ns="urn:test:AAA"/>
- </xpath>
- </var>
- <adopt dest-doc="doc2" node="a"/>
- <append-child parent="p2" child="a"/>
- <reconcile-ns node="a"/>
- <expected doc="doc2"><![CDATA[<a:p2 xmlns:a="urn:test:AAA"><a:a/></a:p2>]]></expected>
- </test>
-
- <test name="adopt_recon_attr">
- <doc name="doc1"><![CDATA[<p1 xmlns:b="urn:test:BBB" b:attr="marvin"/>]]></doc>
- <doc name="doc2"><![CDATA[<a:p2 xmlns:a="urn:test:AAA"/>]]></doc>
- <var name="attr">
- <xpath doc="doc1" select-node="/p1/@b:attr">
- <reg-ns prefix="b" ns="urn:test:BBB"/>
- </xpath>
- </var>
- <var name="p2">
- <xpath doc="doc2" select-node="/a:p2">
- <reg-ns prefix="a" ns="urn:test:AAA"/>
- </xpath>
- </var>
- <adopt dest-doc="doc2" node="attr" />
- <append-child parent="p2" child="attr"/>
- <reconcile-ns node="p2"/>
- <expected doc="doc2"><![CDATA[<a:p2 xmlns:a="urn:test:AAA" xmlns:b="urn:test:BBB" b:attr="marvin"/>]]></expected>
- </test>
-
- <test name="adopt_recon_attr_2">
- <!-- Here we will specify a destination-parent for adoption. -->
- <doc name="doc1"><![CDATA[<p1 xmlns:b="urn:test:BBB" b:attr="marvin"/>]]></doc>
- <doc name="doc2"><![CDATA[<a:p2 xmlns:a="urn:test:AAA"/>]]></doc>
- <var name="attr">
- <xpath doc="doc1" select-node="/p1/@b:attr">
- <reg-ns prefix="b" ns="urn:test:BBB"/>
- </xpath>
- </var>
- <var name="p2">
- <xpath doc="doc2" select-node="/a:p2">
- <reg-ns prefix="a" ns="urn:test:AAA"/>
- </xpath>
- </var>
- <adopt dest-doc="doc2" dest-parent="p2" node="attr" />
- <append-child parent="p2" child="attr"/>
- <reconcile-ns node="p2"/>
- <expected doc="doc2"><![CDATA[<a:p2 xmlns:a="urn:test:AAA" xmlns:b="urn:test:BBB" b:attr="marvin"/>]]></expected>
- </test>
-
- <test name="adopt_recon_attr_3">
- <!-- Conflicting ns-prefixes for the added attribute. -->
- <doc name="doc1"><![CDATA[<p1 xmlns:a="urn:test:AAA" a:attr="marvin"/>]]></doc>
- <doc name="doc2"><![CDATA[<a:p2 xmlns:a="urn:test:aaa"/>]]></doc>
- <var name="attr">
- <xpath doc="doc1" select-node="/p1/@a:attr">
- <reg-ns prefix="a" ns="urn:test:AAA"/>
- </xpath>
- </var>
- <var name="p2">
- <xpath doc="doc2" select-node="/a:p2">
- <reg-ns prefix="a" ns="urn:test:aaa"/>
- </xpath>
- </var>
- <adopt dest-doc="doc2" node="attr" />
- <append-child parent="p2" child="attr"/>
- <reconcile-ns node="p2"/>
- <expected doc="doc2"><![CDATA[<a:p2 xmlns:a="urn:test:aaa" xmlns:a1="urn:test:AAA" a1:attr="marvin"/>]]></expected>
- </test>
-
- <test name="adopt_recon_attr_4">
- <!-- Qualified attribute added to default namespaced elem. -->
- <doc name="doc1"><![CDATA[<p1 xmlns:a="urn:test:AAA" a:attr="marvin"/>]]></doc>
- <doc name="doc2"><![CDATA[<p2 xmlns="urn:test:AAA"/>]]></doc>
- <var name="attr">
- <xpath doc="doc1" select-node="/p1/@a:attr">
- <reg-ns prefix="a" ns="urn:test:AAA"/>
- </xpath>
- </var>
- <var name="p2">
- <xpath doc="doc2" select-node="/a:p2">
- <reg-ns prefix="a" ns="urn:test:AAA"/>
- </xpath>
- </var>
- <adopt dest-doc="doc2" node="attr" />
- <append-child parent="p2" child="attr"/>
- <reconcile-ns node="p2"/>
- <expected doc="doc2"><![CDATA[<p2 xmlns="urn:test:AAA" xmlns:a="urn:test:AAA" a:attr="marvin"/>]]></expected>
- </test>
-
- <test name="adopt_recon_attr_5">
- <!-- Shadowed and conflicting prefix. dest-parent IS given. -->
- <doc name="doc1"><![CDATA[<p1 xmlns:a="urn:test:AAA" a:attr="marvin"/>]]></doc>
- <doc name="doc2"><![CDATA[<p2 xmlns:a="urn:test:AAA"><a:p3 xmlns:a="urn:test:ZZZ"/></p2>]]></doc>
- <var name="attr">
- <xpath doc="doc1" select-node="/p1/@a:attr">
- <reg-ns prefix="a" ns="urn:test:AAA"/>
- </xpath>
- </var>
- <var name="p3">
- <xpath doc="doc2" select-node="/p2/a:p3">
- <reg-ns prefix="a" ns="urn:test:ZZZ"/>
- </xpath>
- </var>
- <adopt dest-doc="doc2" node="attr" dest-parent="p3"/>
- <append-child parent="p3" child="attr"/>
- <!-- Note that we don't need to reconcile here, since done during
- adoption. -->
- <expected doc="doc2"><![CDATA[
-<p2 xmlns:a="urn:test:AAA">
- <a:p3 xmlns:a="urn:test:ZZZ" xmlns:a1="urn:test:AAA" a1:attr="marvin"/>
-</p2>]]></expected>
- </test>
-
- <test name="adopt_recon_attr_6">
- <!-- Shadowed and conflicting prefix. dest-parent NOT given. -->
- <doc name="doc1"><![CDATA[<p1 xmlns:a="urn:test:AAA" a:attr="marvin"/>]]></doc>
- <doc name="doc2"><![CDATA[<p2 xmlns:a="urn:test:AAA"><a:p3 xmlns:a="urn:test:ZZZ"/></p2>]]></doc>
- <var name="attr">
- <xpath doc="doc1" select-node="/p1/@a:attr">
- <reg-ns prefix="a" ns="urn:test:AAA"/>
- </xpath>
- </var>
- <var name="p3">
- <xpath doc="doc2" select-node="/p2/a:p3">
- <reg-ns prefix="a" ns="urn:test:ZZZ"/>
- </xpath>
- </var>
- <adopt dest-doc="doc2" node="attr"/>
- <append-child parent="p3" child="attr"/>
- <reconcile-ns node="p3"/>
- <expected doc="doc2"><![CDATA[
-<p2 xmlns:a="urn:test:AAA">
- <a:p3 xmlns:a="urn:test:ZZZ" xmlns:a1="urn:test:AAA" a1:attr="marvin"/>
-</p2>]]></expected>
- </test>
-
- <test name="shadow_1">
-
- <doc name="doc"><![CDATA[
-<foo xmlns:foo="urn:test:mine">
- <p xmlns:bar="urn:test:mine"/>
- <a1>
- <a2 xmlns:bar="urn:test:OTHER">
- <foo:a3/>
- </a2>
- </a1>
-</foo>
-]]></doc>
- <var name="a1">
- <xpath doc="doc" select-node="/foo/a1"/>
- </var>
- <var name="p" >
- <xpath doc="doc" select-node="/foo/p"/>
- </var>
- <remove node="a1"/>
- <append-child parent="p" child="a1"/>
- <reconcile-ns node="a1"/>
- <expected doc="doc"><![CDATA[
-<foo xmlns:foo="urn:test:mine">
- <p xmlns:bar="urn:test:mine">
- <a1>
- <a2 xmlns:bar="urn:test:OTHER">
- <foo:a3/>
- </a2>
- </a1>
- </p>
-</foo>
-]]></expected>
- </test>
-
- <test name="norm_1">
-
- <doc name="doc"><![CDATA[
-<foo>
- <p1 xmlns:a="urn:test:A" xmlns:b="urn:test:B" xmlns:c="urn:test:C">
- <a:a>
- <b:b a:attr="dont" c:attr="panic"/>
- </a:a>
- </p1>
- <p2/>
-</foo>
-]]></doc>
- <var name="a">
- <xpath doc="doc" select-node="/foo/p1/a:a">
- <reg-ns prefix="a" ns="urn:test:A"/>
- </xpath>
- </var>
- <var name="p2" >
- <xpath doc="doc" select-node="/foo/p2"/>
- </var>
- <remove node="a"/>
- <append-child parent="p2" child="a"/>
- <reconcile-ns node="a"/>
- <expected doc="doc"><![CDATA[
-<foo>
- <p1 xmlns:a="urn:test:A" xmlns:b="urn:test:B" xmlns:c="urn:test:C"/>
- <p2>
- <a:a xmlns:a="urn:test:A">
- <b:b xmlns:b="urn:test:B" xmlns:c="urn:test:C" a:attr="dont" c:attr="panic"/>
- </a:a>
- </p2>
-</foo>
-]]></expected>
- </test>
-</tests>