Esempio n. 1
0
 public static ReadOnlyCollection <IDiffCsvColumn> CreateStandardColumns(DiffConfiguration diffConfiguration)
 {
     return(new ReadOnlyCollection <IDiffCsvColumn>(new IDiffCsvColumn[]
     {
         new DiffIdCsvColumn(diffConfiguration),
         new DiffKindCsvColumn(diffConfiguration),
         new DiffSubKindCsvColumn(diffConfiguration),
         new DiffStaticCsvColumn(diffConfiguration),
         new DiffVirtualityCsvColumn(diffConfiguration),
         new DiffOverrideCsvColumn(diffConfiguration),
         new DiffUnsafeCsvColumn(diffConfiguration),
         new DiffObsoletionCsvColumn(diffConfiguration),
         new DiffInOldCsvColumn(diffConfiguration),
         new DiffInNewCsvColumn(diffConfiguration),
         new DiffDifferenceCsvColumn(diffConfiguration),
         new DiffOldAssemblyCsvColumn(diffConfiguration),
         new DiffNewAssemblyCsvColumn(diffConfiguration),
         new DiffNamespaceCsvColumn(diffConfiguration),
         new DiffTypeCsvColumn(diffConfiguration),
         new DiffMemberCsvColumn(diffConfiguration),
         new DiffVisibiliyCsvColumn(diffConfiguration),
         new DiffTypeIdCsvColumn(diffConfiguration),
         new DiffTypeIsExposedCsvColumn(diffConfiguration),
         new DiffReturnTypeCsvColumn(diffConfiguration),
         new DiffTokensCsvColumn(diffConfiguration)
     }));
 }
Esempio n. 2
0
        private void PerformAssertion(string control, string test, bool assertion,
                                      DiffConfiguration xmlUnitConfiguration)
        {
            XmlDiff diff = new XmlDiff(new XmlInput(control), new XmlInput(test),
                                       xmlUnitConfiguration);

            PerformAssertion(diff, assertion);
        }
Esempio n. 3
0
        public DiffTokensCsvColumn(DiffConfiguration diffConfiguration)
            : base(diffConfiguration)
        {
            var stringWriter    = new StringWriter();
            var writer          = new TextSyntaxWriter(stringWriter);
            var mappingSettings = DiffEngine.GetMappingSettings(diffConfiguration);

            _diffWriter = new DiffCSharpWriter(writer, mappingSettings);
        }
Esempio n. 4
0
        public void CompareExpectedXMLs()
        {
            Dictionary <string, string> expected = new Dictionary <string, string>();
            Dictionary <string, string> actual   = new Dictionary <string, string>();

            RunReport(mValidTrxFile);

            XmlNamespaceManager xmlNamespaceManager = new XmlNamespaceManager(new NameTable());

            xmlNamespaceManager.AddNamespace("prefix", "urn:model.allure.qatools.yandex.ru");

            DiffConfiguration diffConfiguration = new DiffConfiguration(String.Empty, false, WhitespaceHandling.None, true);

            FillCategoryToXmlMap("sample-output", expected);
            FillCategoryToXmlMap(mTargetDir, actual);

            if (expected.Keys.Count != actual.Keys.Count)
            {
                Assert.Fail("Expected {0} categories but found {1}.", expected.Keys.Count, actual.Keys.Count);
            }

            foreach (string category in actual.Keys)
            {
                if (!expected.ContainsKey(category))
                {
                    Assert.Fail("The category " + category + " was not expected.");
                }

                string expectedFile = expected[category];
                string actualFile   = actual[category];

                string expectedFileText = File.ReadAllText(expectedFile);
                string actualFileText   = File.ReadAllText(actualFile);

                XmlInput control = new XmlInput(expectedFileText);
                XmlInput test    = new XmlInput(actualFileText);

                XmlDiff xmlDiff = new XmlDiff(control, test, diffConfiguration);

                DiffResult diffResult = xmlDiff.Compare();
                if (!diffResult.Identical)
                {
                    string failureMessage = String.Format("The expected file {0} was different from the actual file {1}", expectedFile, actualFile);
                    failureMessage += Environment.NewLine;
                    failureMessage += "Expected XML: ";
                    failureMessage += expectedFileText;
                    failureMessage += Environment.NewLine;
                    failureMessage += "Actual XML: ";
                    failureMessage += actualFileText;
                    failureMessage += Environment.NewLine;
                    failureMessage += "Difference: ";
                    failureMessage += diffResult.Difference;

                    Assert.Fail(failureMessage);
                }
            }
        }
Esempio n. 5
0
        public static bool AreXmlElementsEqual(XmlInput ours, XmlInput theirs)
        {
            // Must use 'config', or whitespace only differences will make the elements different.
            // cf. diffing changeset 240 and 241 in the Tok Pisin project for such whitespace differences.
            var config     = new DiffConfiguration(WhitespaceHandling.None);
            var diff       = new XmlDiff(ours, theirs, config);
            var diffResult = diff.Compare();

            return(diffResult == null || diffResult.Difference == null || !diffResult.Difference.MajorDifference);
        }
Esempio n. 6
0
        [Test] public void DefaultConfiguredWithGenericDescription()
        {
            DiffConfiguration diffConfiguration = new DiffConfiguration();

            Assert.AreEqual(DiffConfiguration.DEFAULT_DESCRIPTION,
                            diffConfiguration.Description);

            Assert.AreEqual(DiffConfiguration.DEFAULT_DESCRIPTION,
                            new XmlDiff("", "").OptionalDescription);
        }
Esempio n. 7
0
        [Test] public void DefaultConfiguredWithWhitespaceHandlingAll()
        {
            DiffConfiguration diffConfiguration = new DiffConfiguration();

            Assert.AreEqual(WhitespaceHandling.All, diffConfiguration.WhitespaceHandling);

            PerformAssertion(xmlWithoutWhitespace, xmlWithWhitespaceElement, false);
            PerformAssertion(xmlWithoutWhitespace, xmlWithoutWhitespaceElement, false);
            PerformAssertion(xmlWithoutWhitespace, xmlWithWhitespace, false);
            PerformAssertion(xmlWithoutWhitespaceElement, xmlWithWhitespaceElement, false);
        }
 public void CanConfigureWhitespaceHandlingSignificant()
 {
     DiffConfiguration xmlUnitConfiguration =
         new DiffConfiguration (WhitespaceHandling.Significant);
     PerformAssertion(xmlWithoutWhitespace, xmlWithWhitespaceElement,
                      true, xmlUnitConfiguration);
     PerformAssertion(xmlWithoutWhitespace, xmlWithoutWhitespaceElement,
                      true, xmlUnitConfiguration);
     PerformAssertion(xmlWithoutWhitespace, xmlWithWhitespace,
                      true, xmlUnitConfiguration);
     PerformAssertion(xmlWithoutWhitespaceElement, xmlWithWhitespaceElement,
                      true, xmlUnitConfiguration);
 }
Esempio n. 9
0
        [Test] public void CanConfigureWhitespaceHandlingNone()
        {
            DiffConfiguration xmlUnitConfiguration =
                new DiffConfiguration(WhitespaceHandling.None);

            PerformAssertion(xmlWithoutWhitespace, xmlWithWhitespaceElement,
                             true, xmlUnitConfiguration);
            PerformAssertion(xmlWithoutWhitespace, xmlWithoutWhitespaceElement,
                             true, xmlUnitConfiguration);
            PerformAssertion(xmlWithoutWhitespace, xmlWithWhitespace,
                             true, xmlUnitConfiguration);
            PerformAssertion(xmlWithoutWhitespaceElement, xmlWithWhitespaceElement,
                             true, xmlUnitConfiguration);
        }
        public void CanConfigureNotToUseValidatingParser()
        {
            DiffConfiguration diffConfiguration = new DiffConfiguration(false);
            Assert.AreEqual(false, diffConfiguration.UseValidatingParser);

            Stream controlFileStream = ValidatorTests.ValidFile;
            Stream testFileStream = ValidatorTests.InvalidFile;
            try {
                XmlDiff diff = new XmlDiff(new XmlInput(controlFileStream),
                                           new XmlInput(testFileStream),
                                           diffConfiguration);
                diff.Compare();
            } catch (XmlSchemaException e) {
                Assert.Fail("Unexpected validation failure: " + e.Message);
            } finally {
                controlFileStream.Close();
                testFileStream.Close();
            }
        }
        public void DefaultConfiguredToUseValidatingParser()
        {
            DiffConfiguration diffConfiguration = new DiffConfiguration();
            Assert.AreEqual(DiffConfiguration.DEFAULT_USE_VALIDATING_PARSER,
                                   diffConfiguration.UseValidatingParser);

            Stream controlFileStream = ValidatorTests.ValidFile;
            Stream testFileStream = ValidatorTests.InvalidFile;
            try {
                XmlDiff diff = new XmlDiff(new StreamReader(controlFileStream),
                                           new StreamReader(testFileStream));
                diff.Compare();
                Assert.Fail("Expected validation failure");
            } catch (XmlSchemaException e) {
                string message = e.Message; // to prevent 'unused variable' compiler warning
            } finally {
                controlFileStream.Close();
                testFileStream.Close();
            }
        }
Esempio n. 12
0
        [Test] public void CanConfigureNotToUseValidatingParser()
        {
            DiffConfiguration diffConfiguration = new DiffConfiguration(false);

            Assert.AreEqual(false, diffConfiguration.UseValidatingParser);

            Stream controlFileStream = ValidatorTests.ValidFile;
            Stream testFileStream    = ValidatorTests.InvalidFile;

            try {
                XmlDiff diff = new XmlDiff(new XmlInput(controlFileStream),
                                           new XmlInput(testFileStream),
                                           diffConfiguration);
                diff.Compare();
            } catch (XmlSchemaException e) {
                Assert.Fail("Unexpected validation failure: " + e.Message);
            } finally {
                controlFileStream.Close();
                testFileStream.Close();
            }
        }
Esempio n. 13
0
        [Test] public void DefaultConfiguredToUseValidatingParser()
        {
            DiffConfiguration diffConfiguration = new DiffConfiguration();

            Assert.AreEqual(DiffConfiguration.DEFAULT_USE_VALIDATING_PARSER,
                            diffConfiguration.UseValidatingParser);

            Stream controlFileStream = ValidatorTests.ValidFile;
            Stream testFileStream    = ValidatorTests.InvalidFile;

            try {
                XmlDiff diff = new XmlDiff(new StreamReader(controlFileStream),
                                           new StreamReader(testFileStream));
                diff.Compare();
                Assert.Fail("Expected validation failure");
            } catch (XmlSchemaException e) {
                string message = e.Message; // to prevent 'unused variable' compiler warning
            } finally {
                controlFileStream.Close();
                testFileStream.Close();
            }
        }
Esempio n. 14
0
        public void CanConfigureNotToUseValidatingParser()
        {
            DiffConfiguration diffConfiguration = new DiffConfiguration(false);

            Assert.AreEqual(false, diffConfiguration.UseValidatingParser);

            FileStream controlFileStream = File.Open(VALID_FILE,
                                                     FileMode.Open, FileAccess.Read);
            FileStream testFileStream = File.Open(INVALID_FILE,
                                                  FileMode.Open, FileAccess.Read);

            try {
                XmlDiff diff = new XmlDiff(new XmlInput(controlFileStream),
                                           new XmlInput(testFileStream),
                                           diffConfiguration);
                diff.Compare();
            } catch (XmlSchemaException e) {
                Assert.Fail("Unexpected validation failure: " + e.Message);
            } finally {
                controlFileStream.Close();
                testFileStream.Close();
            }
        }
Esempio n. 15
0
        private void CheckXmlMapping(string hbm, params string[] stream)
        {
            NameTable nt = new NameTable();

            nt.Add("urn:nhibernate-mapping-2.2");
            var nsmgr = new XmlNamespaceManager(nt);

            nsmgr.AddNamespace("urn", "urn:nhibernate-mapping-2.2");
            XmlDocument doc = new XmlDocument(nt);

            doc.PreserveWhitespace = true;
            doc.LoadXml(internalStreams[stream[0]].ToString());
            XmlNode refChild = doc.SelectSingleNode("//urn:class", nsmgr);

            for (int i = 1; i < stream.Length; ++i)
            {
                XmlDocument docChild = new XmlDocument(nt);
                docChild.PreserveWhitespace = true;
                docChild.LoadXml(internalStreams[stream[i]].ToString());
                doc.SelectSingleNode("/urn:hibernate-mapping", nsmgr).AppendChild(doc.ImportNode(docChild.SelectSingleNode("//urn:class", nsmgr), true));
            }
            DiffConfiguration dc   = new DiffConfiguration("test", true, WhitespaceHandling.None, true);
            XmlDiff           diff = new XmlDiff(new XmlInput(doc.OuterXml)
                                                 , new XmlInput(ResourceHelper.GetResource(hbm))
                                                 , dc
                                                 );
            var res = diff.Compare();

            if (!res.Equal)
            {
                Console.WriteLine("Expected xml was:");
                Console.WriteLine(ResourceHelper.GetResource(hbm));
                Console.WriteLine("But was:");
                Console.WriteLine(doc.InnerXml);
            }
            Assert.IsTrue(res.Equal);
        }
Esempio n. 16
0
 public DiffOldAssemblyCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration, 0)
 {
 }
Esempio n. 17
0
 public DiffMemberCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
Esempio n. 18
0
 protected DiffAssemblyCsvColumn(DiffConfiguration diffConfiguration, int index)
     : base(diffConfiguration)
 {
     _index = index;
 }
 public DiffVirtualityCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
Esempio n. 20
0
 public DiffStaticCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
        public void DefaultConfiguredWithGenericDescription()
        {
            DiffConfiguration diffConfiguration = new DiffConfiguration();
            Assert.AreEqual(DiffConfiguration.DEFAULT_DESCRIPTION,
                                   diffConfiguration.Description);

            Assert.AreEqual(DiffConfiguration.DEFAULT_DESCRIPTION,
                                   new XmlDiff("", "").OptionalDescription);
        }
Esempio n. 22
0
 protected DiffCsvColumn(DiffConfiguration diffConfiguration)
 {
     DiffConfiguration = diffConfiguration;
 }
Esempio n. 23
0
 public DiffTypeCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
 public DiffNewAssemblyCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration, 1)
 {
 }
 public DiffOverrideCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
Esempio n. 26
0
 public DiffKindCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
 public DiffTypeIsExposedCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
Esempio n. 28
0
 public DiffDifferenceCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
Esempio n. 29
0
 public DiffInNewCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
 public DiffNamespaceCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
 private void PerformAssertion(string control, string test, bool assertion, 
     DiffConfiguration xmlUnitConfiguration)
 {
     XmlDiff diff = new XmlDiff(new XmlInput(control), new XmlInput(test),
                                xmlUnitConfiguration);
     PerformAssertion(diff, assertion);
 }
 public DiffVisibiliyCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
Esempio n. 33
0
 public DiffUnsafeCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }
        public void DefaultConfiguredWithWhitespaceHandlingAll()
        {
            DiffConfiguration diffConfiguration = new DiffConfiguration();
            Assert.AreEqual(WhitespaceHandling.All, diffConfiguration.WhitespaceHandling);

            PerformAssertion(xmlWithoutWhitespace, xmlWithWhitespaceElement, false);
            PerformAssertion(xmlWithoutWhitespace, xmlWithoutWhitespaceElement, false);
            PerformAssertion(xmlWithoutWhitespace, xmlWithWhitespace, false);
            PerformAssertion(xmlWithoutWhitespaceElement, xmlWithWhitespaceElement, false);
        }
 public DiffObsoletionCsvColumn(DiffConfiguration diffConfiguration)
     : base(diffConfiguration)
 {
 }