Ejemplo n.º 1
0
        public void Execute(XmlNode testConfig, Context context)
        {
            var configuration = new BizUnitXmlCompareConfiguration(testConfig, context);

            string foundFilePath = GetFoundFilePath(context, configuration);

            try
            {
                StringBuilder diff;
                bool comparisonResult = Compare(out diff, configuration.GoalFilePath, foundFilePath, configuration.StringsToSearchAndReplace, configuration.ElementsToExclude, configuration.AttributesToExclude, configuration.IgnoreChildOrder, configuration.IgnoreComments);
                if (!comparisonResult)
                {
                    context.LogInfo(string.Format(CultureInfo.CurrentCulture, "This is the diff result: {0}", diff));
                    throw new ApplicationException(string.Format(CultureInfo.CurrentCulture, "Xml comparison failed between {0} and {1}. This is the diff result: {2}", foundFilePath, configuration.GoalFilePath, diff));
                }
                context.LogInfo("Files are identical.");
            }
            finally
            {
                if (!string.IsNullOrEmpty(foundFilePath) && configuration.DeleteFile)
                {
                    File.Delete(foundFilePath);
                    context.LogInfo(string.Format(CultureInfo.CurrentCulture, "Found file ({0}) deleted.", foundFilePath));
                }
            }
        }
 public void DeleteFileProperty()
 {
     const bool testValue = false;
     var testInstance = new BizUnitXmlCompareConfiguration();
     testInstance.DeleteFile = false;
     Assert.AreEqual(testValue, testInstance.DeleteFile);
 }
 public void FilterProperty()
 {
     string testValue = "testValue";
     var testInstance = new BizUnitXmlCompareConfiguration();
     testInstance.Filter = testValue;
     Assert.AreEqual(testValue, testInstance.Filter);
 }
 public void ElementsToExcludeProperty()
 {
     var testValue = new List<string>();
     testValue.Add("this is an item");
     var testInstance = new BizUnitXmlCompareConfiguration();
     testInstance.ElementsToExclude = testValue;
     Assert.AreEqual(testValue, testInstance.ElementsToExclude);
 }
        public void Constructor()
        {
            var testInstance = new BizUnitXmlCompareConfiguration();

            Assert.NotNull(testInstance.ElementsToExclude);
            Assert.NotNull(testInstance.AttributesToExclude);
            Assert.NotNull(testInstance.StringsToSearchAndReplace);
        }
 public void AttributesToExcludeProperty()
 {
     var testValue = new List<Attribute>();
     var testAttribute = new Attribute();
     testAttribute.Name = "name";
     testAttribute.ParentElementXPath = "xpath";
     testValue.Add(testAttribute);
     var testInstance = new BizUnitXmlCompareConfiguration();
     testInstance.AttributesToExclude = testValue;
     Assert.AreEqual("name", testInstance.AttributesToExclude[0].Name);
     Assert.AreEqual("xpath", testInstance.AttributesToExclude[0].ParentElementXPath);
 }
 public void IgnoreChildOrderProperty()
 {
     const bool testValue = false;
     var testInstance = new BizUnitXmlCompareConfiguration();
     testInstance.IgnoreChildOrder = false;
     Assert.AreEqual(testValue, testInstance.IgnoreChildOrder);
 }
 public void GoalFilePathProperty()
 {
     string testValue = "testValue";
     var testInstance = new BizUnitXmlCompareConfiguration();
     testInstance.GoalFilePath = testValue;
     Assert.AreEqual(testValue, testInstance.GoalFilePath);
 }
 public void TimeoutProperty()
 {
     uint testValue = 10000;
     var testInstance = new BizUnitXmlCompareConfiguration();
     testInstance.Timeout = testValue;
     Assert.AreEqual(testValue, testInstance.Timeout);
 }
 public void StringsToSearchAndReplaceProperty()
 {
     var testValue = new List<Replacement>();
     var testReplacement = new Replacement();
     testReplacement.NewString = "new";
     testReplacement.OldString = "old";
     testValue.Add(testReplacement);
     var testInstance = new BizUnitXmlCompareConfiguration();
     testInstance.StringsToSearchAndReplace = testValue;
     Assert.AreEqual("new", testInstance.StringsToSearchAndReplace[0].NewString);
     Assert.AreEqual("old", testInstance.StringsToSearchAndReplace[0].OldString);
 }
 public void SearchDirectoryProperty()
 {
     string testValue = "testValue";
     var testInstance = new BizUnitXmlCompareConfiguration();
     testInstance.SearchDirectory = testValue;
     Assert.AreEqual(testValue, testInstance.SearchDirectory);
 }
 public void IgnoreCommentsProperty()
 {
     const bool testValue = true;
     var testInstance = new BizUnitXmlCompareConfiguration();
     testInstance.IgnoreComments = true;
     Assert.AreEqual(testValue, testInstance.IgnoreComments);
 }