New mode tests (spec change 26308)
authordebbie
Tue, 12 Aug 2014 17:18:55 +0100
changeset 610 a011f2233862
parent 603 796bddc3ada6
child 611 bfaea3fa0825
New mode tests (spec change 26308)
admin/catalog-schema.xsd
tests/attr/mode/_mode-test-set.xml
tests/attr/mode/mode-0012.xsl
tests/attr/mode/mode-0013.xsl
tests/attr/mode/mode-0014.xsl
tests/attr/mode/mode-1440.xsl
tests/attr/mode/mode-1441.xsl
tests/attr/mode/mode-1442.xsl
tests/attr/mode/mode-1443.xsl
tests/attr/mode/mode-1444.xsl
--- a/admin/catalog-schema.xsd	Mon Aug 11 16:53:02 2014 +0100
+++ b/admin/catalog-schema.xsd	Tue Aug 12 17:18:55 2014 +0100
@@ -1533,6 +1533,22 @@
             </xs:simpleContent>
         </xs:complexType>
     </xs:element>
+    
+    <xs:element name="assert-warning" substitutionGroup="abstractAssertion">
+        <xs:annotation>
+            <xs:documentation>
+                <div>
+                    <h3>assert-warning</h3>
+                    <p>
+                        Asserts the processor has output a warning. The content of the warning cannot be tested.
+                    </p>                    
+                </div> 
+            </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+                <xs:sequence/>            
+        </xs:complexType>
+    </xs:element>
 
     <xs:element name="assert-serialization" substitutionGroup="abstractAssertion">
         <xs:annotation>
--- a/tests/attr/mode/_mode-test-set.xml	Mon Aug 11 16:53:02 2014 +0100
+++ b/tests/attr/mode/_mode-test-set.xml	Tue Aug 12 17:18:55 2014 +0100
@@ -300,6 +300,56 @@
       </result>
    </test-case>
    
+   <test-case name="mode-0012">
+      <description>Test xsl:mode on-no-match with namespace nodes; streaming= " yes ", "true", and "1"</description>
+      <keywords>xsl:mode on-no-match-attribute shallow-skip shallow-copy text-only-copy variable-reference namespace-nodes parentless-nodes streamable</keywords>
+      <created by="Debbie Lockett" on="2014-08-12"/>
+      <dependencies>
+         <spec value="XSLT30+"/>
+         <feature value="streaming"/>
+      </dependencies>
+      <test>
+         <stylesheet file="mode-0012.xsl"/>
+         <initial-template name="main"/>
+      </test>
+      <result>
+         <assert-xml><![CDATA[<out><c xmlns:a="http://abracadabra.com/"/><d/><s/></out>]]></assert-xml>
+      </result>
+   </test-case>
+   
+   <test-case name="mode-0013">
+      <description>Test xsl:mode on-no-match with namespace nodes; streaming= "no", "false" and "0"</description>
+      <keywords>xsl:mode on-no-match-attribute shallow-skip shallow-copy text-only-copy variable-reference namespace-nodes parentless-nodes non-streamable</keywords>
+      <created by="Debbie Lockett" on="2014-08-12"/>
+      <dependencies>
+         <spec value="XSLT30+"/>
+      </dependencies>
+      <test>
+         <stylesheet file="mode-0013.xsl"/>
+         <initial-template name="main"/>
+      </test>
+      <result>
+         <assert-xml><![CDATA[<out><c xmlns:a="http://abracadabra.com/"/><d/><s/></out>]]></assert-xml>
+      </result>
+   </test-case>
+   
+   <test-case name="mode-0014">
+      <description>Test xsl:mode on-no-match with namespace nodes; streaming= "YES" (not allowed)</description>
+      <keywords>xsl:mode on-no-match-attribute shallow-skip shallow-copy text-only-copy variable-reference namespace-nodes parentless-nodes streamable</keywords>
+      <created by="Debbie Lockett" on="2014-08-12"/>
+      <dependencies>
+         <spec value="XSLT30+"/>
+         <feature value="streaming"/>
+      </dependencies>
+      <test>
+         <stylesheet file="mode-0014.xsl"/>
+         <initial-template name="main"/>
+      </test>
+      <result>
+         <error code="XTSE0020"/>
+      </result>
+   </test-case>
+   
    <test-case name="mode-0101">
       <description>Simple test of xsl:apply-templates with mode.</description>
       <keywords>matching-mode</keywords>
@@ -859,6 +909,7 @@
       <description>Test xsl:mode on-no-match="text-only-copy"</description>
       <keywords>xsl:mode on-no-match-attribute text-only-copy matching-mode</keywords>
       <created by="Michael Kay" on="2012-11-07"/>
+      <modified by="Debbie Lockett" on="2014-08-12" change="use normalize-space in assert"/>
       <environment ref="mode-14"/>
       <dependencies>
          <spec value="XSLT30+"/>
@@ -868,8 +919,7 @@
          <initial-mode name="s"/>
       </test>
       <result>
-         <assert>starts-with(., "
- The First Book of Moses, Called GENESIS.")</assert>
+         <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
       </result>
    </test-case>
 
@@ -877,6 +927,7 @@
       <description>Test xsl:mode on-no-match="text-only-copy", streaming</description>
       <keywords>xsl:mode on-no-match-attribute text-only-copy streamable buildin-template-rules</keywords>
       <created by="Michael Kay" on="2012-11-07"/>
+      <modified by="Debbie Lockett" on="2014-08-12" change="use normalize-space in assert"/>
       <environment ref="mode-14s"/>
       <dependencies>
          <spec value="XSLT30+"/>
@@ -887,8 +938,7 @@
          <initial-mode name="s"/>
       </test>
       <result>
-         <assert>starts-with(., "
- The First Book of Moses, Called GENESIS.")</assert>
+         <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>         
       </result>
    </test-case>
 
@@ -896,6 +946,7 @@
       <description>Test xsl:mode on-no-match="text-only-copy"</description>
       <keywords>xsl:mode on-no-match-attribute text-only-copy matching-mode</keywords>
       <created by="Michael Kay" on="2012-11-07"/>
+      <modified by="Debbie Lockett" on="2014-08-12" change="use normalize-space in assert"/>
       <environment ref="mode-14"/>
       <dependencies>
          <spec value="XSLT30+"/>
@@ -905,8 +956,7 @@
          <initial-mode name="s"/>
       </test>
       <result>
-         <assert>starts-with(., "
- The First Book of Moses, Called GENESIS.")</assert>
+         <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
       </result>
    </test-case>
 
@@ -914,6 +964,7 @@
       <description>Test xsl:mode on-no-match="text-only-copy"; streaming</description>
       <keywords>xsl:mode on-no-match-attribute text-only-copy streamable initial-mode</keywords>
       <created by="Michael Kay" on="2012-11-07"/>
+      <modified by="Debbie Lockett" on="2014-08-12" change="use normalize-space in assert"/>
       <environment ref="mode-14s"/>
       <dependencies>
          <spec value="XSLT30+"/>
@@ -924,8 +975,7 @@
          <initial-mode name="s"/>
       </test>
       <result>
-         <assert>starts-with(., "
- The First Book of Moses, Called GENESIS.")</assert>
+         <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
       </result>
    </test-case>
 
@@ -933,6 +983,7 @@
       <description>Test xsl:mode on-no-match="text-only-copy"</description>
       <keywords>xsl:mode on-no-match-attribute text-only-copy TextTest</keywords>
       <created by="Michael Kay" on="2012-11-07"/>
+      <modified by="Debbie Lockett" on="2014-08-12" change="use normalize-space in assert"/>
       <environment ref="mode-14"/>
       <dependencies>
          <spec value="XSLT30+"/>
@@ -941,8 +992,7 @@
          <stylesheet file="mode-1409.xsl"/>
       </test>
       <result>
-         <assert>starts-with(., "
- THE FIRST BOOK OF MOSES, CALLED GENESIS.")</assert>
+         <assert>starts-with(normalize-space(.), "THE FIRST BOOK OF MOSES, CALLED GENESIS.")</assert>
       </result>
    </test-case>
 
@@ -950,6 +1000,7 @@
       <description>Test xsl:mode on-no-match="text-only-copy"; streaming</description>
       <keywords>xsl:mode on-no-match-attribute text-only-copy TextTest streamable</keywords>
       <created by="Michael Kay" on="2012-11-07"/>
+      <modified by="Debbie Lockett" on="2014-08-12" change="use normalize-space in assert"/>
       <environment ref="mode-14s"/>
       <dependencies>
          <spec value="XSLT30+"/>
@@ -959,8 +1010,7 @@
          <stylesheet file="mode-1410.xsl"/>
       </test>
       <result>
-         <assert>starts-with(., "
- THE FIRST BOOK OF MOSES, CALLED GENESIS.")</assert>
+         <assert>starts-with(normalize-space(.), "THE FIRST BOOK OF MOSES, CALLED GENESIS.")</assert>
       </result>
    </test-case>
 
@@ -1242,6 +1292,7 @@
       <description>Test xsl:mode warning-on-no-match=yes</description>
       <keywords>xsl:mode on-no-match-attribute text-only-copy matching-mode xsl:apply-imports</keywords>
       <created by="Michael Kay" on="2012-11-07"/>
+      <modified by="Debbie Lockett" on="2014-08-12" change="assert-warning added, use normalize-space in assert"/>
       <environment ref="mode-14"/>
       <dependencies>
          <spec value="XSLT30+"/>
@@ -1252,11 +1303,11 @@
       </test>
       <result>
          <all-of>
-            <assert>starts-with(., "
- The First Book of Moses, Called GENESIS.")</assert>
+            <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
             <assert-message>
                <assert-xml><![CDATA[** Expect no-matching-template warnings **]]></assert-xml>
             </assert-message>
+            <assert-warning/>
          </all-of>
       </result>
    </test-case>
@@ -1265,6 +1316,7 @@
       <description>Test xsl:mode warning-on-no-match=yes; streaming</description>
       <keywords>xsl:mode on-no-match-attribute streamable text-only-copy matching-mode warning-on-no-match</keywords>
       <created by="Michael Kay" on="2012-11-07"/>
+      <modified by="Debbie Lockett" on="2014-08-12" change="assert-warning added, use normalize-space in assert"/>
       <environment ref="mode-14s"/>
       <dependencies>
          <spec value="XSLT30+"/>
@@ -1276,11 +1328,11 @@
       </test>
       <result>
          <all-of>
-            <assert>starts-with(., "
- The First Book of Moses, Called GENESIS.")</assert>
+            <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
             <assert-message>
                <assert-xml><![CDATA[** Expect no-matching-template warnings **]]></assert-xml>
             </assert-message>
+            <assert-warning/>
          </all-of>
       </result>
    </test-case>
@@ -1289,6 +1341,7 @@
       <description>Test xsl:mode warning-on-no-match=no</description>
       <keywords>xsl:mode on-no-match-attribute text-only-copy EQName warning-on-no-match</keywords>
       <created by="Michael Kay" on="2012-11-07"/>
+      <modified by="Debbie Lockett" on="2014-08-12" change="use normalize-space in assert"/>
       <environment ref="mode-14"/>
       <dependencies>
          <spec value="XSLT30+"/>
@@ -1299,8 +1352,7 @@
       </test>
       <result>
          <all-of>
-            <assert>starts-with(., "
- The First Book of Moses, Called GENESIS.")</assert>
+            <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
             <assert-message>
                <assert-xml><![CDATA[** Expect NO no-matching-template warnings **]]></assert-xml>
             </assert-message>
@@ -1312,6 +1364,7 @@
       <description>Test xsl:mode warning-on-no-match=no; streaming</description>
       <keywords>xsl:mode on-no-match-attribute text-only-copy matching-mode warning-on-no-match xsl:apply-imports</keywords>
       <created by="Michael Kay" on="2012-11-07"/>
+      <modified by="Debbie Lockett" on="2014-08-12" change="use normalize-space in assert"/>
       <environment ref="mode-14s"/>
       <dependencies>
          <spec value="XSLT30+"/>
@@ -1323,8 +1376,7 @@
       </test>
       <result>
          <all-of>
-            <assert>starts-with(., "
- The First Book of Moses, Called GENESIS.")</assert>
+            <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
             <assert-message>
                <assert-xml><![CDATA[** Expect NO no-matching-template warnings **]]></assert-xml>
             </assert-message>
@@ -1498,7 +1550,114 @@
          <error code="XTTE3100"/>
       </result>
    </test-case>
-
+   
+   <test-case name="mode-1440">
+      <description>Test xsl:mode warning-on-no-match="true"</description>
+      <keywords>xsl:mode on-no-match-attribute text-only-copy matching-mode xsl:apply-imports</keywords>
+      <created by="Debbie Lockett" on="2014-08-12"/>
+      <environment ref="mode-14"/>
+      <dependencies>
+         <spec value="XSLT30+"/>
+      </dependencies>
+      <test>
+         <stylesheet file="mode-1440.xsl"/>
+         <initial-mode name="s"/>
+      </test>
+      <result>
+         <all-of>
+            <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
+            <assert-message>
+               <assert-xml><![CDATA[** Expect no-matching-template warnings **]]></assert-xml>
+            </assert-message>
+            <assert-warning/>
+         </all-of>
+      </result>
+   </test-case>
+   
+   <test-case name="mode-1441">
+      <description>Test xsl:mode warning-on-no-match="false"</description>
+      <keywords>xsl:mode on-no-match-attribute text-only-copy warning-on-no-match</keywords>
+      <created by="Debbie Lockett" on="2014-08-12"/>
+      <environment ref="mode-14"/>
+      <dependencies>
+         <spec value="XSLT30+"/>
+      </dependencies>
+      <test>
+         <stylesheet file="mode-1441.xsl"/>
+         <initial-mode name="s"/>
+      </test>
+      <result>
+         <all-of>
+            <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
+            <assert-message>
+               <assert-xml><![CDATA[** Expect NO no-matching-template warnings **]]></assert-xml>
+            </assert-message>
+         </all-of>
+      </result>
+   </test-case>
+         
+   <test-case name="mode-1442">
+      <description>Test xsl:mode warning-on-no-match="1"</description>
+      <keywords>xsl:mode on-no-match-attribute text-only-copy matching-mode xsl:apply-imports</keywords>
+      <created by="Debbie Lockett" on="2014-08-12"/>
+      <environment ref="mode-14"/>
+      <dependencies>
+         <spec value="XSLT30+"/>
+      </dependencies>
+      <test>
+         <stylesheet file="mode-1442.xsl"/>
+         <initial-mode name="s"/>
+      </test>
+      <result>
+         <all-of>
+            <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
+            <assert-message>
+               <assert-xml><![CDATA[** Expect no-matching-template warnings **]]></assert-xml>
+            </assert-message>
+            <assert-warning/>
+         </all-of>
+      </result>
+   </test-case>
+   
+   <test-case name="mode-1443">
+      <description>Test xsl:mode warning-on-no-match="0"</description>
+      <keywords>xsl:mode on-no-match-attribute text-only-copy warning-on-no-match</keywords>
+      <created by="Debbie Lockett" on="2014-08-12"/>
+      <environment ref="mode-14"/>
+      <dependencies>
+         <spec value="XSLT30+"/>
+      </dependencies>
+      <test>
+         <stylesheet file="mode-1443.xsl"/>
+         <initial-mode name="s"/>
+      </test>
+      <result>
+         <all-of>
+            <assert>starts-with(normalize-space(.), "The First Book of Moses, Called GENESIS.")</assert>
+            <assert-message>
+               <assert-xml><![CDATA[** Expect NO no-matching-template warnings **]]></assert-xml>
+            </assert-message>
+         </all-of>
+      </result>
+   </test-case>
+   
+   <test-case name="mode-1444">
+      <description>Test xsl:mode warning-on-no-match="Yes" (not allowed) </description>
+      <keywords>xsl:mode on-no-match-attribute text-only-copy matching-mode xsl:apply-imports</keywords>
+      <created by="Debbie Lockett" on="2014-08-12"/>
+      <environment ref="mode-14"/>
+      <dependencies>
+         <spec value="XSLT30+"/>
+      </dependencies>
+      <test>
+         <stylesheet file="mode-1444.xsl"/>
+         <initial-mode name="s"/>
+      </test>
+      <result>
+         <error code="XTSE0020"/>
+      </result>
+   </test-case>
+      
    <test-case name="mode-1501">
       <description>Test for mode="#all" with match="node()"</description>
       <keywords>mode-#all mode-#current</keywords>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/attr/mode/mode-0012.xsl	Tue Aug 12 17:18:55 2014 +0100
@@ -0,0 +1,27 @@
+<?xml version="1.0"?> 
+
+<!-- Test xsl:mode on-no-match with namespace nodes; streaming= " yes ", "true", and "1" -->
+<!-- on-no-match=various, namespace nodes, with streaming --> 
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="3.0"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  exclude-result-prefixes="xs">
+
+  <xsl:mode name="c" on-no-match="shallow-copy" streamable="true"/> 
+  <xsl:mode name="d" on-no-match="shallow-skip" streamable="1"/>
+  <xsl:mode name="s" on-no-match="text-only-copy" streamable=" yes "/>
+  
+  <xsl:variable name="temp" as="namespace-node()">
+    <xsl:namespace name="a">http://abracadabra.com/</xsl:namespace>
+  </xsl:variable>
+  
+  <xsl:template name="main">
+    <out>
+      <c><xsl:apply-templates select="$temp" mode="c"/></c>
+      <d><xsl:apply-templates select="$temp" mode="d"/></d>
+      <s><xsl:apply-templates select="$temp" mode="s"/></s>
+    </out>
+  </xsl:template>
+  
+    
+</xsl:stylesheet>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/attr/mode/mode-0013.xsl	Tue Aug 12 17:18:55 2014 +0100
@@ -0,0 +1,27 @@
+<?xml version="1.0"?> 
+
+<!-- Test xsl:mode on-no-match with namespace nodes; streaming= "no", "false" and "0" -->
+<!-- on-no-match=various, namespace nodes, with streaming --> 
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="3.0"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  exclude-result-prefixes="xs">
+
+  <xsl:mode name="c" on-no-match="shallow-copy" streamable="no"/> 
+  <xsl:mode name="d" on-no-match="shallow-skip" streamable="false"/>
+  <xsl:mode name="s" on-no-match="text-only-copy" streamable="0"/>
+  
+  <xsl:variable name="temp" as="namespace-node()">
+    <xsl:namespace name="a">http://abracadabra.com/</xsl:namespace>
+  </xsl:variable>
+  
+  <xsl:template name="main">
+    <out>
+      <c><xsl:apply-templates select="$temp" mode="c"/></c>
+      <d><xsl:apply-templates select="$temp" mode="d"/></d>
+      <s><xsl:apply-templates select="$temp" mode="s"/></s>
+    </out>
+  </xsl:template>
+  
+    
+</xsl:stylesheet>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/attr/mode/mode-0014.xsl	Tue Aug 12 17:18:55 2014 +0100
@@ -0,0 +1,27 @@
+<?xml version="1.0"?> 
+
+<!-- Test xsl:mode on-no-match with namespace nodes; streaming= "YES" (not allowed) -->
+<!-- on-no-match=various, namespace nodes, with streaming --> 
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="3.0"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  exclude-result-prefixes="xs">
+
+  <xsl:mode name="c" on-no-match="shallow-copy" streamable="yes"/> 
+  <xsl:mode name="d" on-no-match="shallow-skip" streamable="YES"/>
+  <xsl:mode name="s" on-no-match="text-only-copy" streamable=" yes "/>
+  
+  <xsl:variable name="temp" as="namespace-node()">
+    <xsl:namespace name="a">http://abracadabra.com/</xsl:namespace>
+  </xsl:variable>
+  
+  <xsl:template name="main">
+    <out>
+      <c><xsl:apply-templates select="$temp" mode="c"/></c>
+      <d><xsl:apply-templates select="$temp" mode="d"/></d>
+      <s><xsl:apply-templates select="$temp" mode="s"/></s>
+    </out>
+  </xsl:template>
+  
+    
+</xsl:stylesheet>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/attr/mode/mode-1440.xsl	Tue Aug 12 17:18:55 2014 +0100
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+
+<!-- on-no-match="text-only-copy", with warning-on-no-match="true" --> 
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="3.0"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  exclude-result-prefixes="xs">
+ 
+  <xsl:mode name="s" on-no-match="text-only-copy" warning-on-no-match="true"/>
+  
+  <xsl:template match="/" mode="s">
+    <xsl:message>** Expect no-matching-template warnings **</xsl:message>
+    <xsl:apply-imports/>
+  </xsl:template>
+  
+  <xsl:template match="*" mode="s">
+    <xsl:apply-templates mode="#current"/>
+  </xsl:template>
+   
+</xsl:stylesheet>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/attr/mode/mode-1441.xsl	Tue Aug 12 17:18:55 2014 +0100
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+
+<!-- on-no-match="text-only-copy", with warning-on-no-match=" false " --> 
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version=" 3.0 "
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  exclude-result-prefixes=" xs ">
+ 
+  <xsl:mode name=" s " on-no-match=" text-only-copy " warning-on-no-match=" no "/>
+  
+  <xsl:template match=" / " mode=" s ">
+    <xsl:message>** Expect NO no-matching-template warnings **</xsl:message>
+    <xsl:apply-imports/>
+  </xsl:template>
+  
+  <xsl:template match=" * " mode= "s ">
+    <xsl:apply-templates mode=" #current "/>
+  </xsl:template>
+   
+</xsl:stylesheet>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/attr/mode/mode-1442.xsl	Tue Aug 12 17:18:55 2014 +0100
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+
+<!-- on-no-match="text-only-copy", with warning-on-no-match="1" --> 
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="3.0"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  exclude-result-prefixes="xs">
+ 
+  <xsl:mode name="s" on-no-match="text-only-copy" warning-on-no-match="1"/>
+  
+  <xsl:template match="/" mode="s">
+    <xsl:message>** Expect no-matching-template warnings **</xsl:message>
+    <xsl:apply-imports/>
+  </xsl:template>
+  
+  <xsl:template match="*" mode="s">
+    <xsl:apply-templates mode="#current"/>
+  </xsl:template>
+   
+</xsl:stylesheet>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/attr/mode/mode-1443.xsl	Tue Aug 12 17:18:55 2014 +0100
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+
+<!-- on-no-match="text-only-copy", with warning-on-no-match="0" --> 
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version=" 3.0 "
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  exclude-result-prefixes=" xs ">
+ 
+  <xsl:mode name=" s " on-no-match=" text-only-copy " warning-on-no-match="0"/>
+  
+  <xsl:template match=" / " mode=" s ">
+    <xsl:message>** Expect NO no-matching-template warnings **</xsl:message>
+    <xsl:apply-imports/>
+  </xsl:template>
+  
+  <xsl:template match=" * " mode= "s ">
+    <xsl:apply-templates mode=" #current "/>
+  </xsl:template>
+   
+</xsl:stylesheet>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/attr/mode/mode-1444.xsl	Tue Aug 12 17:18:55 2014 +0100
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+
+<!-- on-no-match="text-only-copy", with warning-on-no-match="Yes" (not allowed) --> 
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="3.0"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  exclude-result-prefixes="xs">
+ 
+  <xsl:mode name="s" on-no-match="text-only-copy" warning-on-no-match="Yes"/>
+  
+  <xsl:template match="/" mode="s">
+    <xsl:message>** Expect no-matching-template warnings **</xsl:message>
+    <xsl:apply-imports/>
+  </xsl:template>
+  
+  <xsl:template match="*" mode="s">
+    <xsl:apply-templates mode="#current"/>
+  </xsl:template>
+   
+</xsl:stylesheet>
\ No newline at end of file