Exemplo n.º 1
0
        public void RunEXslTest(object param0, object param1, object param2, object param3, object param4)
        {
            string OutFile = "out_exslt.xml";
            string xmlFile = Path.Combine(@"TestFiles\", FilePathUtil.GetTestDataPath(), @"XsltScenarios\EXslt\", param0.ToString());
            string xslFile = Path.Combine(@"TestFiles\", FilePathUtil.GetTestDataPath(), @"XsltScenarios\EXslt\", param1.ToString());
            string resultType = param2.ToString();
            string baseLine = Path.Combine(@"TestFiles\", FilePathUtil.GetTestDataPath(), @"XsltScenarios\EXslt\out\", param3.ToString());

#pragma warning disable 0618
            if (param4.ToString() == "v1")
                _xsltV1 = new XslTransform();
#pragma warning restore 0618
            else if (param4.ToString() == "v2")
                _xsltV2 = new XslCompiledTransform();

            Utils util = new Utils(_output);

            _output.WriteLine("XmlFile : file:\\\\" + xmlFile);
            _output.WriteLine("XslFile : file:\\\\" + xslFile);

            if (resultType == "valid")
                _output.WriteLine("BaseLine : file:\\\\" + baseLine);
            else
                _output.WriteLine("Test Type : Invalid");

            //Create the argument list and load the source document
            XsltArgumentList argList = InitArgumentList();
            XPathDocument doc = null;

            try
            {
                doc = new XPathDocument(xmlFile);
            }
            catch (Exception e)
            {
                _output.WriteLine(e.ToString());
                Assert.True(false);
            }

            //Delete the output file if it exists

            using (Stream stm = new FileStream(OutFile, FileMode.Create, FileAccess.ReadWrite))
            {
                try
                {
                    if (param4.ToString() == "v1")
                    {
                        XPathDocument xslDoc = new XPathDocument(xslFile);
                        //Evidence evidence = new Evidence();
                        //evidence.AddHost(new Zone(SecurityZone.MyComputer));
                        //evidence.AddHost(new Zone(SecurityZone.Intranet));

                        _xsltV1.Load(xslDoc, new XmlUrlResolver()/*, evidence*/);
                        _xsltV1.Transform(doc, argList, stm, new XmlUrlResolver());
                    }
                    else if (param4.ToString() == "v2")
                    {
                        _xsltV2.Load(xslFile, XsltSettings.TrustedXslt, new XmlUrlResolver());
                        _xsltV2.Transform(doc, argList, stm);
                    }
                    stm.Dispose();
                    util.VerifyResult(OutFile, baseLine);
                }

                //For V1 Transform
                catch (XPathException ex)
                {
                    _output.WriteLine(ex.Message);
                    if (resultType == "invalid")
                        return;
                    else
                        Assert.True(false);
                }

                //For V2 Transform
                catch (XsltException ex)
                {
                    _output.WriteLine(ex.Message);
                    if (resultType == "invalid")
                        return;
                    else
                        Assert.True(false);
                }
            }
        }
Exemplo n.º 2
0
        public void RunEXslTest(object param0, object param1, object param2, object param3, object param4)
        {
            string OutFile    = "out_exslt.xml";
            string xmlFile    = Path.Combine(@"TestFiles\", FilePathUtil.GetTestDataPath(), @"XsltScenarios\EXslt\", param0.ToString());
            string xslFile    = Path.Combine(@"TestFiles\", FilePathUtil.GetTestDataPath(), @"XsltScenarios\EXslt\", param1.ToString());
            string resultType = param2.ToString();
            string baseLine   = Path.Combine(@"TestFiles\", FilePathUtil.GetTestDataPath(), @"XsltScenarios\EXslt\out\", param3.ToString());

#pragma warning disable 0618
            if (param4.ToString() == "v1")
            {
                _xsltV1 = new XslTransform();
            }
#pragma warning restore 0618
            else if (param4.ToString() == "v2")
            {
                _xsltV2 = new XslCompiledTransform();
            }

            Utils util = new Utils(_output);

            _output.WriteLine("XmlFile : file:\\\\" + xmlFile);
            _output.WriteLine("XslFile : file:\\\\" + xslFile);

            if (resultType == "valid")
            {
                _output.WriteLine("BaseLine : file:\\\\" + baseLine);
            }
            else
            {
                _output.WriteLine("Test Type : Invalid");
            }

            //Create the argument list and load the source document
            XsltArgumentList argList = InitArgumentList();
            XPathDocument    doc     = null;

            try
            {
                doc = new XPathDocument(xmlFile);
            }
            catch (Exception e)
            {
                _output.WriteLine(e.ToString());
                Assert.True(false);
            }

            //Delete the output file if it exists

            using (Stream stm = new FileStream(OutFile, FileMode.Create, FileAccess.ReadWrite))
            {
                try
                {
                    if (param4.ToString() == "v1")
                    {
                        XPathDocument xslDoc = new XPathDocument(xslFile);
                        //Evidence evidence = new Evidence();
                        //evidence.AddHost(new Zone(SecurityZone.MyComputer));
                        //evidence.AddHost(new Zone(SecurityZone.Intranet));

                        _xsltV1.Load(xslDoc, new XmlUrlResolver() /*, evidence*/);
                        _xsltV1.Transform(doc, argList, stm, new XmlUrlResolver());
                    }
                    else if (param4.ToString() == "v2")
                    {
                        _xsltV2.Load(xslFile, XsltSettings.TrustedXslt, new XmlUrlResolver());
                        _xsltV2.Transform(doc, argList, stm);
                    }
                    stm.Dispose();
                    util.VerifyResult(OutFile, baseLine);
                }

                //For V1 Transform
                catch (XPathException ex)
                {
                    _output.WriteLine(ex.Message);
                    if (resultType == "invalid")
                    {
                        return;
                    }
                    else
                    {
                        Assert.True(false);
                    }
                }

                //For V2 Transform
                catch (XsltException ex)
                {
                    _output.WriteLine(ex.Message);
                    if (resultType == "invalid")
                    {
                        return;
                    }
                    else
                    {
                        Assert.True(false);
                    }
                }
            }
        }