示例#1
0
        protected override void Action()
        {
            bool     secondFileIsOlder = _inputFile1.CreationTime < _inputFile2.CreationTime;
            FileInfo oldModelFile      = secondFileIsOlder ? _inputFile1 : _inputFile2;
            FileInfo newModelFile      = secondFileIsOlder ? _inputFile2 : _inputFile1;

            DsiModel oldModel = new DsiModel("Diff", new List <string>(), Assembly.GetExecutingAssembly());
            DsiModel newModel = new DsiModel("Diff", new List <string>(), Assembly.GetExecutingAssembly());

            oldModel.Load(oldModelFile.FullName, this);
            newModel.Load(newModelFile.FullName, this);

            DsiModelCompare comparer = new DsiModelCompare(oldModel, newModel, this);

            comparer.Compare();

            if (comparer.AreIdentical)
            {
                Logger.LogUserMessage("Models are identical");
            }
            else
            {
                Logger.LogUserMessage("Models are different");
                ReportDeltas(comparer);
            }
        }
示例#2
0
 public void TestInitialize()
 {
     _oldModel        = new DsiModel("Test1", new List <string>(), Assembly.GetExecutingAssembly());
     _newModel        = new DsiModel("Test2", new List <string>(), Assembly.GetExecutingAssembly());
     _dsiModelCompare = new DsiModelCompare(_oldModel, _newModel, null);
     _allModels       = new [] { _oldModel, _newModel };
     _onlyOldModel    = new [] { _oldModel };
     _onlyNewModel    = new [] { _newModel };
 }
示例#3
0
        private void ReportDeltas(DsiModelCompare comparer)
        {
            Logger.LogUserMessage("Added Elements");
            Logger.LogUserMessage("==============");
            foreach (string elementName in comparer.AddedElements)
            {
                Logger.LogUserMessage($" {elementName}");
            }

            Logger.LogUserMessage("");

            Logger.LogUserMessage("Removed Elements");
            Logger.LogUserMessage("===============");
            foreach (string elementName in comparer.RemovedElements)
            {
                Logger.LogUserMessage($" {elementName}");
            }

            Logger.LogUserMessage("");

            Logger.LogUserMessage("Added Relations");
            Logger.LogUserMessage("==============");
            foreach (KeyValuePair <string, HashSet <string> > relations in comparer.AddedRelations)
            {
                string consumer = relations.Key;
                foreach (string provider in relations.Value)
                {
                    Logger.LogUserMessage($" {consumer} -> {provider}");
                }
            }

            Logger.LogUserMessage("");

            Logger.LogUserMessage("Removed Relations");
            Logger.LogUserMessage("=================");
            foreach (KeyValuePair <string, HashSet <string> > relations in comparer.RemovedRelations)
            {
                string consumer = relations.Key;
                foreach (string provider in relations.Value)
                {
                    Logger.LogUserMessage($" {consumer} -> {provider}");
                }
            }

            Console.WriteLine("");
        }