Example #1
0
        public void Load(string dsiFilename, IProgress <ProgressInfo> progress)
        {
            Logger.LogDataModelMessage($"Load data model file={dsiFilename}");

            DsiModelFile modelFile = new DsiModelFile(dsiFilename, _metaDataModel, _elementsDataModel, _relationsDataModel);

            modelFile.Load(progress);
        }
Example #2
0
        public void TestSaveModel()
        {
            string inputFilename  = "DsmSuite.Analyzer.Model.Test.Input.dsi";
            string outputFilename = "DsmSuite.Analyzer.Model.Test.Output.dsi";

            FillModelData();

            DsiModelFile modelFile = new DsiModelFile(outputFilename, this, this, this);

            modelFile.Save(false, null);

            Assert.IsTrue(File.ReadAllBytes(outputFilename).SequenceEqual(File.ReadAllBytes(inputFilename)));
        }
Example #3
0
        public void TestLoadModel()
        {
            string inputFilename = "DsmSuite.Analyzer.Model.Test.Input.dsi";

            DsiModelFile modelFile = new DsiModelFile(inputFilename, this, this, this);

            modelFile.Load(null);

            Assert.AreEqual(2, _metaData.Count);

            Assert.AreEqual(2, _metaData["group1"].Count);
            Assert.AreEqual("item1", _metaData["group1"][0].Name);
            Assert.AreEqual("value1", _metaData["group1"][0].Value);
            Assert.AreEqual("item2", _metaData["group1"][1].Name);
            Assert.AreEqual("value2", _metaData["group1"][1].Value);

            Assert.AreEqual(2, _metaData["group2"].Count);
            Assert.AreEqual("item3", _metaData["group2"][0].Name);
            Assert.AreEqual("value3", _metaData["group2"][0].Value);
            Assert.AreEqual("item4", _metaData["group2"][1].Name);
            Assert.AreEqual("value4", _metaData["group2"][1].Value);

            Assert.AreEqual(3, _elements.Count);

            Assert.AreEqual(1, _elements[0].Id);
            Assert.AreEqual("a.a1", _elements[0].Name);
            Assert.AreEqual("elementtype1", _elements[0].Type);
            Assert.AreEqual("source1", _elements[0].Source);

            Assert.AreEqual(2, _elements[1].Id);
            Assert.AreEqual("a.a2", _elements[1].Name);
            Assert.AreEqual("elementtype2", _elements[1].Type);
            Assert.AreEqual("source2", _elements[1].Source);

            Assert.AreEqual(3, _elements[2].Id);
            Assert.AreEqual("b.b1", _elements[2].Name);
            Assert.AreEqual("elementtype3", _elements[2].Type);
            Assert.AreEqual("source3", _elements[2].Source);

            Assert.AreEqual(2, _relations.Count);

            Assert.AreEqual(1, _relations[0].ConsumerId);
            Assert.AreEqual(2, _relations[0].ProviderId);
            Assert.AreEqual("relationtype1", _relations[0].Type);
            Assert.AreEqual(100, _relations[0].Weight);

            Assert.AreEqual(2, _relations[1].ConsumerId);
            Assert.AreEqual(3, _relations[1].ProviderId);
            Assert.AreEqual("relationtype2", _relations[1].Type);
            Assert.AreEqual(200, _relations[1].Weight);
        }
Example #4
0
        public void Save(string dsiFilename, bool compressFile, IProgress <ProgressInfo> progress)
        {
            Logger.LogDataModelMessage($"Save data model file={dsiFilename} compresss={compressFile}");

            foreach (string type in GetElementTypes())
            {
                _metaDataModel.AddMetaDataItemToDefaultGroup($"- '{type}' elements found", $"{GetElementTypeCount(type)}");
            }
            _metaDataModel.AddMetaDataItemToDefaultGroup("Total elements found", $"{TotalElementCount}");

            foreach (string type in GetRelationTypes())
            {
                _metaDataModel.AddMetaDataItemToDefaultGroup($"- '{type}' relations found", $"{GetRelationTypeCount(type)}");
            }
            _metaDataModel.AddMetaDataItemToDefaultGroup("Total relations found", $"{TotalRelationCount}");
            _metaDataModel.AddMetaDataItemToDefaultGroup("Total relations resolved", $"{ResolvedRelationCount} (confidence={ResolvedRelationPercentage:0.000} %)");

            DsiModelFile modelFile = new DsiModelFile(dsiFilename, _metaDataModel, _elementsDataModel, _relationsDataModel);

            modelFile.Save(compressFile, progress);
        }