Пример #1
0
        public void VerifyXML_MeteoData()
        {
            var model = createTestDataModel1Race1Run();

            fillMandatoryFields(model);

            // no eather set, check if weather is absent
            string s = exportToXML(model.GetRace(0));

            Assert.ThrowsException <Xunit.Sdk.TrueException>(() => XmlAssertion.AssertXPathExists("/dsv_alpine_raceresults/racedata/rundata[1]/meteodata", s));

            model.GetRace(0).AdditionalProperties.Weather = "sunny";
            s = exportToXML(model.GetRace(0));
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/meteodata/weather", s, "sunny");


            Assert.ThrowsException <Xunit.Sdk.TrueException>(() => XmlAssertion.AssertXPathExists("/dsv_alpine_raceresults/racedata/rundata[1]/meteodata/snowtexture", s));
            model.GetRace(0).AdditionalProperties.Snow = "griffig";
            s = exportToXML(model.GetRace(0));
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/meteodata/snowtexture", s, "griffig");


            Assert.ThrowsException <Xunit.Sdk.TrueException>(() => XmlAssertion.AssertXPathExists("/dsv_alpine_raceresults/racedata/rundata[1]/meteodata/temperature_startaltitude", s));
            model.GetRace(0).AdditionalProperties.TempStart = "-2";
            s = exportToXML(model.GetRace(0));
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/meteodata/temperature_startaltitude", s, "-2");


            Assert.ThrowsException <Xunit.Sdk.TrueException>(() => XmlAssertion.AssertXPathExists("/dsv_alpine_raceresults/racedata/rundata[1]/meteodata/temperature_finishaltitude", s));
            model.GetRace(0).AdditionalProperties.TempFinish = "-1";
            s = exportToXML(model.GetRace(0));
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/meteodata/temperature_finishaltitude", s, "-1");
        }
Пример #2
0
        [Test] public void AssertXslTransformResultsWorksWithStrings()
        {
            string xslt    = XsltTests.IDENTITY_TRANSFORM;
            string someXml = "<a><b>c</b><b/></a>";

            XmlAssertion.AssertXslTransformResults(xslt, someXml, someXml);
        }
Пример #3
0
        [Test] public void AssertStringEqualAndIdenticalToSelf()
        {
            string control = "<assert>true</assert>";
            string test    = "<assert>true</assert>";

            XmlAssertion.AssertXmlIdentical(control, test);
            XmlAssertion.AssertXmlEquals(control, test);
        }
Пример #4
0
 [Test] public void AssertXPathEvaluatesToWorksConstantExpression()
 {
     XmlAssertion.AssertXPathEvaluatesTo("true()",
                                         MY_SOLAR_SYSTEM,
                                         "True");
     XmlAssertion.AssertXPathEvaluatesTo("false()",
                                         MY_SOLAR_SYSTEM,
                                         "False");
 }
Пример #5
0
        [Test] public void AssertDifferentStringsNotEqualNorIdentical()
        {
            string  control = "<assert>true</assert>";
            string  test    = "<assert>false</assert>";
            XmlDiff xmlDiff = new XmlDiff(control, test);

            XmlAssertion.AssertXmlNotIdentical(xmlDiff);
            XmlAssertion.AssertXmlNotEquals(xmlDiff);
        }
Пример #6
0
 [Test] public void AssertXPathExistsFailsForNonExistentXPath()
 {
     try {
         XmlAssertion.AssertXPathExists("//star[@name='alpha centauri']",
                                        MY_SOLAR_SYSTEM);
         Assertion.Fail("Expected assertion failure");
     } catch (AssertionException e) {
         AvoidUnusedVariableCompilerWarning(e);
     }
 }
Пример #7
0
        [Test] public void AssertXmlValidTrueForValidFile()
        {
            StreamReader reader = GetStreamReader(ValidatorTests.VALID_FILE);

            try {
                XmlAssertion.AssertXmlValid(reader);
            } finally {
                reader.Close();
            }
        }
Пример #8
0
        [Test] public void AssertXslTransformResultsWorksWithXmlInput()
        {
            StreamReader xsl            = GetStreamReader(".\\..\\tests\\etc\\animal.xsl");
            XmlInput     xslt           = new XmlInput(xsl);
            StreamReader xml            = GetStreamReader(".\\..\\tests\\etc\\testAnimal.xml");
            XmlInput     xmlToTransform = new XmlInput(xml);
            XmlInput     expectedXml    = new XmlInput("<dog/>");

            XmlAssertion.AssertXslTransformResults(xslt, xmlToTransform, expectedXml);
        }
        public void XmlSerializer_EventResult()
        {
            string getXmlEventResult(uint _startNumber, RaceRun _rr, LiveTimingFIS.LiveTimingFIS _lt)
            {
                var _results = ViewUtilities.ViewToList <RunResultWithPosition>(_rr.GetResultView());
                var _res     = _results.FirstOrDefault(_r => _r.StartNumber == _startNumber);

                return(_lt.getXmlEventResult(_rr, _res));
            }

            string xml;

            LiveTimingFIS.LiveTimingFIS lt = new LiveTimingFIS.LiveTimingFIS();

            TestDataGenerator tg = new TestDataGenerator();
            var rp = tg.createRaceParticipant();

            rp.Participant.Code = "123";

            var r   = tg.Model.GetRace(0);
            var rr1 = r.GetRun(0);

            xml = getXmlEventResult(1, rr1, lt);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/finish/@bib", xml, "1");
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/finish/@correction", xml, "y");
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/finish/time", xml, "0.00");

            rr1.SetStartFinishTime(r.GetParticipant(1), new TimeSpan(0, 08, 0, 0, 0), new TimeSpan(0, 08, 0, 0, 100));
            xml = getXmlEventResult(1, rr1, lt);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/finish/time", xml, "0.10");

            rr1.SetStartFinishTime(r.GetParticipant(1), new TimeSpan(0, 08, 0, 0, 0), new TimeSpan(0, 08, 0, 30, 100));
            xml = getXmlEventResult(1, rr1, lt);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/finish/time", xml, "30.10");

            rr1.SetStartFinishTime(r.GetParticipant(1), new TimeSpan(0, 08, 0, 0, 0), new TimeSpan(0, 08, 1, 30, 100));
            xml = getXmlEventResult(1, rr1, lt);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/finish/time", xml, "1:30.10");

            rr1.SetResultCode(r.GetParticipant(1), RunResult.EResultCode.DIS);
            xml = getXmlEventResult(1, rr1, lt);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/dq/@bib", xml, "1");

            rr1.SetResultCode(r.GetParticipant(1), RunResult.EResultCode.NaS);
            xml = getXmlEventResult(1, rr1, lt);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/dns/@bib", xml, "1");

            rr1.SetResultCode(r.GetParticipant(1), RunResult.EResultCode.NQ);
            xml = getXmlEventResult(1, rr1, lt);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/dns/@bib", xml, "1");

            rr1.SetResultCode(r.GetParticipant(1), RunResult.EResultCode.NiZ);
            xml = getXmlEventResult(1, rr1, lt);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/dnf/@bib", xml, "1");
        }
Пример #10
0
        [Test] public void AssertXmlEqualsUsesOptionalDescription()
        {
            string description = "Another Optional Description";

            try {
                XmlDiff diff = new XmlDiff(new XmlInput("<a/>"), new XmlInput("<b/>"),
                                           new DiffConfiguration(description));
                XmlAssertion.AssertXmlEquals(diff);
            } catch (NUnit.Framework.AssertionException e) {
                Assertion.AssertEquals(true, e.Message.StartsWith(description));
            }
        }
Пример #11
0
        [Test] public void AssertXPathExistsFailsForNonExistentXPath()
        {
            bool caughtException = true;

            try {
                XmlAssertion.AssertXPathExists("//star[@name='alpha centauri']",
                                               MY_SOLAR_SYSTEM);
                caughtException = false;
            } catch (AssertionException e) {
                AvoidUnusedVariableCompilerWarning(e);
            }
            Assert.IsTrue(caughtException);
        }
Пример #12
0
        [Test] public void AssertXmlValidFalseForInvalidFile()
        {
            StreamReader reader = GetStreamReader(ValidatorTests.INVALID_FILE);

            try {
                XmlAssertion.AssertXmlValid(reader);
                Assertion.Fail("Expected assertion failure");
            } catch (AssertionException e) {
                AvoidUnusedVariableCompilerWarning(e);
            } finally {
                reader.Close();
            }
        }
Пример #13
0
        [Test] public void AssertXmlEqualsUsesOptionalDescription()
        {
            string description     = "Another Optional Description";
            bool   caughtException = true;

            try {
                XmlDiff diff = new XmlDiff(new XmlInput("<a/>"), new XmlInput("<b/>"),
                                           new DiffConfiguration(description));
                XmlAssertion.AssertXmlEquals(diff);
                caughtException = false;
            } catch (NUnit.Framework.AssertionException e) {
                Assert.IsTrue(e.Message.IndexOf(description) > -1);
            }
            Assert.IsTrue(caughtException);
        }
Пример #14
0
        public void VerifyXML_MandatoryFields()
        {
            var model = createTestDataModel1Race1Run();

            fillMandatoryFields(model);

            string s = exportToXML(model.GetRace(0));

            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedescription/racedate", s, DateTime.Today.ToString("yyyy-MM-dd"));
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedescription/gender", s, "A");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedescription/raceid", s, "1234");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedescription/raceorganizer", s, "WSV Glonn");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedescription/discipline", s, "RS");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedescription/category", s, "SO");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedescription/racename", s, "Test Race");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedescription/raceplace", s, "Test Location");

            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/useddsvlist", s, "123");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/fvalue", s, "720");

            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/racepenalty[@gender='L']/applied_penalty", s, "0");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/racepenalty[@gender='L']/calculated_penalty", s, "0");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/racepenalty[@gender='M']/applied_penalty", s, "0");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/racepenalty[@gender='M']/calculated_penalty", s, "0");

            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/racejury[@function='ChiefRace']/lastname", s, "Manager");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/racejury[@function='ChiefRace']/firstname", s, "Race");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/racejury[@function='Referee']/lastname", s, "Referee");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/racejury[@function='Referee']/firstname", s, "Race");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/racejury[@function='RepresentativeTrainer']/lastname", s, "Rep");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/racejury[@function='RepresentativeTrainer']/firstname", s, "T.");

            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/coursename", s, "Kurs 1");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/number_of_gates", s, "10");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/number_of_turninggates", s, "9");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/startaltitude", s, "1000");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/finishaltitude", s, "100");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/courselength", s, "1000");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/coursesetter/lastname", s, "Flossmann");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/coursesetter/firstname", s, "Sven");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/coursesetter/club", s, "WSV Glonn");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/forerunner[1]/lastname", s, "Runner");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/forerunner[1]/firstname", s, "F.");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/racedata/rundata[1]/coursedata/forerunner[1]/club", s, "WSV Glonn");
        }
Пример #15
0
        public void XmlSerializer()
        {
            string xml;

            LiveTimingFIS.LiveTimingFIS lt = new LiveTimingFIS.LiveTimingFIS();

            xml = lt.getXmlKeepAlive();
            XmlAssertion.AssertXPathExists("/livetiming/command/keepalive", xml);


            xml = lt.getXmlClearRace();
            XmlAssertion.AssertXPathExists("/livetiming/command/clear", xml);


            xml = lt.getXmlStatusUpdateInfo("test");
            XmlAssertion.AssertXPathExists("/livetiming/message", xml);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/message", xml, "test");


            TestDataGenerator tg = new TestDataGenerator();
            var rp = tg.createRaceParticipant();
            var r  = tg.Model.GetRace(0);

            r.GetParticipant(1).Participant.Nation = "nation";
            r.GetParticipant(1).Participant.Code   = "123";
            var rr1 = r.GetRun(0);

            xml = lt.getXmlEventOnStart(r.GetParticipant(1));
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/nextstart/@bib", xml, "1");

            xml = lt.getXmlEventStarted(r.GetParticipant(1));
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/raceevent/start/@bib", xml, "1");

            xml = lt.getXmlStartList(rr1);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/startlist/@runno", xml, rr1.Run.ToString());
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/startlist/racer[1]/@order", xml, "1");
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/startlist/racer[1]/bib", xml, "1");
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/startlist/racer[1]/lastname", xml, r.GetParticipant(1).Name);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/startlist/racer[1]/firstname", xml, r.GetParticipant(1).Firstname);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/startlist/racer[1]/nat", xml, r.GetParticipant(1).Nation);
            XmlAssertion.AssertXPathEvaluatesTo("/livetiming/startlist/racer[1]/fiscode", xml, r.GetParticipant(1).Code);
        }
Пример #16
0
        [Test] public void AssertXslTransformResultsCatchesFalsePositive()
        {
            StreamReader xsl               = GetStreamReader(".\\..\\tests\\etc\\animal.xsl");
            XmlInput     xslt              = new XmlInput(xsl);
            StreamReader xml               = GetStreamReader(".\\..\\tests\\etc\\testAnimal.xml");
            XmlInput     xmlToTransform    = new XmlInput(xml);
            XmlInput     expectedXml       = new XmlInput("<cat/>");
            bool         exceptionExpected = true;

            try {
                XmlAssertion.AssertXslTransformResults(xslt, xmlToTransform, expectedXml);
                exceptionExpected = false;
                Assertion.Fail("Expected dog not cat!");
            } catch (AssertionException e) {
                AvoidUnusedVariableCompilerWarning(e);
                if (!exceptionExpected)
                {
                    throw e;
                }
            }
        }
Пример #17
0
        /// <summary>
        /// Merges the modified attributes into <code>AttributeStatement</code> of the assertion.
        /// </summary>
        private void InsertAttributes()
        {
            if (_assertionAttributes == null)
            {
                return;
            }

            // Generate the new AttributeStatement
            var attributeStatement = new AttributeStatement();
            var statements         = new List <object>(_encryptedAssertionAttributes.Count + _assertionAttributes.Count);

            statements.AddRange(_assertionAttributes.ToArray());
            statements.AddRange(_encryptedAssertionAttributes.ToArray());
            attributeStatement.Items = statements.ToArray();

            var list = XmlAssertion.GetElementsByTagName(AttributeStatement.ElementName, Saml20Constants.Assertion);

            if (list.Count > 0)
            {
                // Remove the old AttributeStatement.
                XmlAssertion.RemoveChild(list[0]);

                // FIX _samlAssertion.DocumentElement.RemoveChild(list[0]);
            }

            // Only insert a new AttributeStatement if there are attributes.
            if (statements.Count > 0)
            {
                // Convert the new AttributeStatement to the Document Object Model and make a silent prayer that one day we will
                // be able to make this transition in a more elegant way.
                var attributeStatementDoc = Serialization.Serialize(attributeStatement);
                var attr = XmlAssertion.OwnerDocument.ImportNode(attributeStatementDoc.DocumentElement, true);

                // Insert the new statement.
                XmlAssertion.AppendChild(attr);
            }

            _encryptedAssertionAttributes = null;
            _assertionAttributes          = null;
        }
Пример #18
0
        /// <summary>
        /// Extracts the list of attributes from the &lt;AttributeStatement&gt; of the assertion, and
        /// stores it in <code>_assertionAttributes</code>.
        /// </summary>
        private void ExtractAttributes()
        {
            _assertionAttributes          = new List <SamlAttribute>(0);
            _encryptedAssertionAttributes = new List <EncryptedElement>(0);

            var list = XmlAssertion.GetElementsByTagName(AttributeStatement.ElementName, Saml20Constants.Assertion);

            if (list.Count == 0)
            {
                return;
            }

            // NOTE It would be nice to implement a better-performing solution where only the AttributeStatement is converted.
            // NOTE Namespace issues in the xml-schema "type"-attribute prevents this, though.
            var assertion = Serialization.Deserialize <Assertion>(new XmlNodeReader(XmlAssertion));

            var attributeStatements = assertion.GetAttributeStatements();

            if (attributeStatements.Count == 0 || attributeStatements[0].Items == null)
            {
                return;
            }

            var attributeStatement = attributeStatements[0];

            foreach (var item in attributeStatement.Items)
            {
                if (item is SamlAttribute)
                {
                    _assertionAttributes.Add((SamlAttribute)item);
                }

                if (item is EncryptedElement)
                {
                    _encryptedAssertionAttributes.Add((EncryptedElement)item);
                }
            }
        }
Пример #19
0
        public void VerifyXML_Run1()
        {
            TestDataGenerator tg = new TestDataGenerator();

            fillMandatoryFields(tg.Model);

            // Run 1
            tg.Model.GetRace(0).GetRun(0).SetStartFinishTime(tg.createRaceParticipant(cat: tg.findCat('M')), new TimeSpan(0, 8, 0, 0), new TimeSpan(0, 8, 0, 2));
            tg.Model.GetRace(0).GetRun(0).SetStartFinishTime(tg.createRaceParticipant(cat: tg.findCat('M')), new TimeSpan(0, 8, 1, 0), new TimeSpan(0, 8, 1, 4));
            tg.Model.GetRace(0).GetRun(0).SetStartFinishTime(tg.createRaceParticipant(cat: tg.findCat('M')), new TimeSpan(0, 8, 2, 0), new TimeSpan(0, 8, 2, 3));
            tg.Model.GetRace(0).GetRun(0).SetStartFinishTime(tg.createRaceParticipant(cat: tg.findCat('M')), new TimeSpan(0, 8, 2, 0), null);
            tg.Model.GetRace(0).GetRun(0).SetResultCode(tg.Model.GetRace(0).GetParticipant(4), RunResult.EResultCode.NiZ);
            tg.Model.GetRace(0).GetRun(0).SetResultCode(tg.createRaceParticipant(cat: tg.findCat('M')), RunResult.EResultCode.NaS);
            tg.Model.GetRace(0).GetRun(0).SetResultCode(tg.createRaceParticipant(cat: tg.findCat('M')), RunResult.EResultCode.DIS, "Tor 2");

            // Run 2
            tg.Model.GetRace(0).GetRun(1).SetStartFinishTime(tg.Model.GetRace(0).GetParticipant(1), new TimeSpan(0, 9, 0, 0), new TimeSpan(0, 9, 0, 3));
            tg.Model.GetRace(0).GetRun(1).SetStartFinishTime(tg.Model.GetRace(0).GetParticipant(2), new TimeSpan(0, 9, 1, 0), null);
            tg.Model.GetRace(0).GetRun(1).SetResultCode(tg.Model.GetRace(0).GetParticipant(2), RunResult.EResultCode.NiZ);
            tg.Model.GetRace(0).GetRun(1).SetResultCode(tg.Model.GetRace(0).GetParticipant(3), RunResult.EResultCode.DIS, "Tor 1");

            // no eather set, check if weather is absent
            string s = exportToXML(tg.Model.GetRace(0));

            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/raceresults/classified_competitors/ranked[@bib='1']/competitor/lastname", s, "Name 1");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/raceresults/classified_competitors/ranked[@bib='1']/@bib", s, "1");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/raceresults/classified_competitors/ranked[@bib='1']/raceresult/totaltime", s, "00:05.00");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/raceresults/classified_competitors/ranked[@bib='1']/raceresult/runtime[@runnumber='1']", s, "00:02.00");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/raceresults/classified_competitors/ranked[@bib='1']/raceresult/runtime[@runnumber='2']", s, "00:03.00");

            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/raceresults/not_classified_competitiors/notranked[@bib='2']/@status", s, "DNF2");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/raceresults/not_classified_competitiors/notranked[@bib='3']/@status", s, "DSQ2");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/raceresults/not_classified_competitiors/notranked[@bib='4']/@status", s, "DNF1");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/raceresults/not_classified_competitiors/notranked[@bib='5']/@status", s, "DNS1");
            XmlAssertion.AssertXPathEvaluatesTo("/dsv_alpine_raceresults/raceresults/not_classified_competitiors/notranked[@bib='6']/@status", s, "DSQ1");
        }
Пример #20
0
 [Test] public void AssertXPathEvaluatesToWorksForNonMatchingExpression()
 {
     XmlAssertion.AssertXPathEvaluatesTo("//planet[@position='4']/@supportsLife",
                                         MY_SOLAR_SYSTEM,
                                         "");
 }
Пример #21
0
 /// <summary>
 /// Writes the token to a writer.
 /// </summary>
 /// <param name="writer">The writer.</param>
 public void WriteAssertion(XmlWriter writer)
 {
     XmlAssertion.WriteTo(writer);
 }
Пример #22
0
 [Test] public void AssertXPathExistsWorksForExistentXPath()
 {
     XmlAssertion.AssertXPathExists("//planet[@name='Earth']",
                                    MY_SOLAR_SYSTEM);
 }