diff options
author | Gert Driesen <drieseng@users.sourceforge.net> | 2005-12-04 22:04:40 +0300 |
---|---|---|
committer | Gert Driesen <drieseng@users.sourceforge.net> | 2005-12-04 22:04:40 +0300 |
commit | 5b445204af05145623a0f9c3d9c77dd8bc00cddd (patch) | |
tree | 3e75bdb7573d05303afb62cfdf237af6c2052534 /mcs/class/System.XML | |
parent | aabdd4efbbda31eb4612258d446cc8f88a7af93e (diff) |
* XslTransformTest.cs: Added test for MS bug, described in KB834667.
svn path=/trunk/mcs/; revision=53902
Diffstat (limited to 'mcs/class/System.XML')
-rw-r--r-- | mcs/class/System.XML/Test/System.Xml.Xsl/ChangeLog | 4 | ||||
-rw-r--r-- | mcs/class/System.XML/Test/System.Xml.Xsl/XslTransformTests.cs | 42 |
2 files changed, 46 insertions, 0 deletions
diff --git a/mcs/class/System.XML/Test/System.Xml.Xsl/ChangeLog b/mcs/class/System.XML/Test/System.Xml.Xsl/ChangeLog index 0ee2c151353..996f54c228c 100644 --- a/mcs/class/System.XML/Test/System.Xml.Xsl/ChangeLog +++ b/mcs/class/System.XML/Test/System.Xml.Xsl/ChangeLog @@ -1,5 +1,9 @@ 2005-12-04 Gert Driesen <drieseng@users.sourceforge.net> + * XslTransformTest.cs: Added test for MS bug, described in KB834667. + +2005-12-04 Gert Driesen <drieseng@users.sourceforge.net> + * XslTransformTest.cs: Added test for sorting an empty node set, which is also a test for omitting XML declaration if no XML is output. No longer derive from deprecated Assertion class, formatting updates. diff --git a/mcs/class/System.XML/Test/System.Xml.Xsl/XslTransformTests.cs b/mcs/class/System.XML/Test/System.Xml.Xsl/XslTransformTests.cs index 673a98db486..3013996abc4 100644 --- a/mcs/class/System.XML/Test/System.Xml.Xsl/XslTransformTests.cs +++ b/mcs/class/System.XML/Test/System.Xml.Xsl/XslTransformTests.cs @@ -402,5 +402,47 @@ namespace MonoTests.System.Xml.Xsl Assert.AreEqual (0, sw.ToString ().Length); } + + // http://support.microsoft.com/default.aspx?scid=kb;en-us;834667 + [Test] +#if ONLY_1_1 + // bug is not yet fixed in .NET 1.1 SP1 + [Category ("NotDotNet")] +#endif + public void LocalParameter () + { + string xsltFragment = @"<?xml version=""1.0"" encoding=""UTF-8"" ?> + <xsl:stylesheet xmlns:xsl=""http://www.w3.org/1999/XSL/Transform"" version=""1.0""> + <xsl:param name=""param1"" select=""'global-param1-default'"" /> + <xsl:param name=""param2"" select=""'global-param2-default'"" /> + <xsl:output method=""text"" encoding=""ascii"" /> + <xsl:template match=""/""> + <xsl:call-template name=""Test""> + <xsl:with-param name=""param1"" select=""'local-param1-arg'"" /> + <xsl:with-param name=""param2"" select=""'local-param2-arg'"" /> + </xsl:call-template> + </xsl:template> + <xsl:template name=""Test""> + <xsl:param name=""param1"" select=""'local-param1-default'"" /> + <xsl:param name=""param2"" select=""'local-param2-default'"" /> + <xsl:value-of select=""$param1"" /><xsl:text>/</xsl:text><xsl:value-of select=""$param2"" /> + </xsl:template> + </xsl:stylesheet>"; + + XmlDocument xmlDoc = new XmlDocument (); + xmlDoc.LoadXml ("<dummy />"); + + XslTransform xsltProcessor = new XslTransform (); + xsltProcessor.Load (new XmlTextReader (new StringReader (xsltFragment)), + new XmlUrlResolver (), AppDomain.CurrentDomain.Evidence); + + StringWriter sw = new StringWriter (); + + XsltArgumentList xsltArgs = new XsltArgumentList (); + xsltArgs.AddParam ("param1", string.Empty, "global-param1-arg"); + xsltProcessor.Transform (xmlDoc, xsltArgs, sw, new XmlUrlResolver ()); + + Assert.AreEqual ("local-param1-arg/local-param2-arg", sw.ToString ()); + } } } |