public void ImportModel(string dsiFilename, string dsmFilename, bool autoPartition, bool recordChanges, bool compressDsmFile, IProgress <ProgressInfo> progress) { string processStep = "Builder"; Assembly assembly = Assembly.GetEntryAssembly(); DsiModel dsiModel = new DsiModel(processStep, assembly); dsiModel.Load(dsiFilename, progress); IImportPolicy importPolicy; if (!File.Exists(dsmFilename) || !recordChanges) { importPolicy = new CreateNewModelPolicy(_dsmModel); } else { importPolicy = new UpdateExistingModelPolicy(_dsmModel, dsmFilename, _actionManager, progress); } DsmBuilder builder = new DsmBuilder(dsiModel, _dsmModel, importPolicy, autoPartition); builder.Build(progress); _actionStore.SaveToModel(); _dsmModel.SaveModel(dsmFilename, compressDsmFile, progress); }
public void WhenImportIsFinalizedThenElementOrderIsAssigned() { CreateNewModelPolicy policy = new CreateNewModelPolicy(_dsmModel.Object); policy.FinalizeImport(null); _dsmModel.Verify(x => x.AssignElementOrder(), Times.Once()); }
public void WhenMetaDataItemIsImportedThenMetaDataItemIsAddedToModel() { _dsmModel.Setup(x => x.AddMetaData(MetaDataGroup, MetaDataItemName, MetaDataItemValue)).Returns(_createMetaDataItem.Object); CreateNewModelPolicy policy = new CreateNewModelPolicy(_dsmModel.Object); IMetaDataItem metaDataItem = policy.ImportMetaDataItem(MetaDataGroup, MetaDataItemName, MetaDataItemValue); Assert.AreEqual(_createMetaDataItem.Object, metaDataItem); _dsmModel.Verify(x => x.AddMetaData(MetaDataGroup, MetaDataItemName, MetaDataItemValue), Times.Once()); }
public void WhenRelationIsImportedThenRelationIsAddedToModel() { _dsmModel.Setup(x => x.AddRelation(ConsumerId, ProviderId, RelationType, RelationWeight)).Returns(_createdRelation.Object); CreateNewModelPolicy policy = new CreateNewModelPolicy(_dsmModel.Object); IDsmRelation relation = policy.ImportRelation(ConsumerId, ProviderId, RelationType, RelationWeight); Assert.AreEqual(_createdRelation.Object, relation); _dsmModel.Verify(x => x.AddRelation(ConsumerId, ProviderId, RelationType, RelationWeight), Times.Once()); }
public void GivenElementIsInModelWhenElementIsImportedThenElementIsNotAddedAgainToModel() { IDsmElement foundElement = _existingElement.Object; _dsmModel.Setup(x => x.GetElementByFullname(ElementFullName)).Returns(foundElement); CreateNewModelPolicy policy = new CreateNewModelPolicy(_dsmModel.Object); IDsmElement element = policy.ImportElement(ElementFullName, ElementName, ElementType, _elementParent.Object); Assert.AreEqual(_existingElement.Object, element); _dsmModel.Verify(x => x.AddElement(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <int?>()), Times.Never()); }
public void GivenElementIsNotInModelWhenElementIsImportedThenElementIsAddedToModel() { IDsmElement foundElement = null; _dsmModel.Setup(x => x.GetElementByFullname(ElementFullName)).Returns(foundElement); _dsmModel.Setup(x => x.AddElement(ElementName, ElementType, ElementParentId)).Returns(_createdElement.Object); CreateNewModelPolicy policy = new CreateNewModelPolicy(_dsmModel.Object); IDsmElement element = policy.ImportElement(ElementFullName, ElementName, ElementType, _elementParent.Object); Assert.AreEqual(_createdElement.Object, element); _dsmModel.Verify(x => x.AddElement(ElementName, ElementType, ElementParentId), Times.Once()); }
public void WhenPolicyIsConstructedThenModelIsCleared() { CreateNewModelPolicy policy = new CreateNewModelPolicy(_dsmModel.Object); _dsmModel.Verify(x => x.Clear(), Times.Once()); }