public void Setup() { this.session = new Mock <ISession>(); this.thingDialogNavigationService = new Mock <IThingDialogNavigationService>(); this.permissionService = new Mock <IPermissionService>(); this.cache = new ConcurrentDictionary <CacheKey, Lazy <Thing> >(); this.sitedir = new SiteDirectory(Guid.NewGuid(), this.cache, null); this.siteRdl = new SiteReferenceDataLibrary(Guid.NewGuid(), this.cache, null); this.siteRdl2 = new SiteReferenceDataLibrary(Guid.NewGuid(), this.cache, null) { RequiredRdl = this.siteRdl }; this.sitedir.SiteReferenceDataLibrary.Add(this.siteRdl); this.sitedir.SiteReferenceDataLibrary.Add(this.siteRdl2); this.cache.TryAdd(new CacheKey(this.sitedir.Iid, null), new Lazy <Thing>(() => this.sitedir)); this.cache.TryAdd(new CacheKey(this.siteRdl.Iid, null), new Lazy <Thing>(() => this.siteRdl)); this.cache.TryAdd(new CacheKey(this.siteRdl2.Iid, null), new Lazy <Thing>(() => this.siteRdl2)); var dal = new Mock <IDal>(); this.session.Setup(x => x.DalVersion).Returns(new Version(1, 1, 0)); this.session.Setup(x => x.Dal).Returns(dal.Object); dal.Setup(x => x.MetaDataProvider).Returns(new MetaDataProvider()); }
public void VerifyThatRdlShortnameIsUpdated() { var vm = new GlossaryBrowserViewModel(this.session.Object, this.siteDirectory, null, null, null, null); var sRdl = new SiteReferenceDataLibrary(Guid.NewGuid(), this.assembler.Cache, this.uri); sRdl.Container = this.siteDirectory; var cat = new Glossary(Guid.NewGuid(), this.assembler.Cache, this.uri) { Name = "cat1", ShortName = "1", Container = sRdl }; var cat2 = new Glossary(Guid.NewGuid(), this.assembler.Cache, this.uri) { Name = "cat2", ShortName = "2", Container = sRdl }; CDPMessageBus.Current.SendObjectChangeEvent(cat, EventKind.Added); CDPMessageBus.Current.SendObjectChangeEvent(cat2, EventKind.Added); var rev = typeof(Thing).GetProperty("RevisionNumber"); rev.SetValue(sRdl, 3); sRdl.ShortName = "test"; CDPMessageBus.Current.SendObjectChangeEvent(sRdl, EventKind.Updated); Assert.IsTrue(vm.Glossaries.Count(x => x.ContainerRdlShortName == "test") == 2); }
public void VerifyThatRequiredRdlRdlsReturnsExpectedResult() { var genericRdl = new SiteReferenceDataLibrary(); var familyofRdl = new SiteReferenceDataLibrary(); familyofRdl.RequiredRdl = genericRdl; var modelrdl = new ModelReferenceDataLibrary(); modelrdl.RequiredRdl = familyofRdl; var iteration = new Iteration(); var engineeringModel = new EngineeringModel(); engineeringModel.Iteration.Add(iteration); var engineeringModelSetup = new EngineeringModelSetup(); var iterationSetup = new IterationSetup(); engineeringModelSetup.RequiredRdl.Add(modelrdl); engineeringModelSetup.IterationSetup.Add(iterationSetup); iteration.IterationSetup = iterationSetup; var requiredRdls = iteration.RequiredRdls; CollectionAssert.Contains(requiredRdls, genericRdl); CollectionAssert.Contains(requiredRdls, familyofRdl); CollectionAssert.Contains(requiredRdls, modelrdl); Assert.AreEqual(3, requiredRdls.Count()); }
public void VerifyThatWhenContainerRdlIsSetAndUnitIsSetPropertiesAreSet() { var rdlshortnamename = "rdl shortname"; var rdl = new SiteReferenceDataLibrary(Guid.NewGuid(), null, this.uri) { ShortName = rdlshortnamename, }; var simpleUnit = new SimpleUnit(Guid.NewGuid(), null, this.uri) { Name = "simple unit name", ShortName = "simpleunitshortname" }; rdl.Unit.Add(simpleUnit); var ratioscale = new RatioScale(Guid.NewGuid(), null, this.uri) { Name = "ratio scale name", ShortName = "ratioscaleshortname" }; ratioscale.Unit = simpleUnit; rdl.Scale.Add(ratioscale); var measurementScaleRowViewModel = new MeasurementScaleRowViewModel(ratioscale, this.session.Object, null); Assert.AreEqual(ratioscale.ShortName, measurementScaleRowViewModel.ShortName); Assert.AreEqual(ratioscale.Name, measurementScaleRowViewModel.Name); Assert.AreEqual(simpleUnit.ShortName, measurementScaleRowViewModel.MeasurementUnit); Assert.AreEqual(rdlshortnamename, measurementScaleRowViewModel.ContainerRdl); }
public void Setup() { this.siteReferenceDataLibraryDao = new Mock <ISiteReferenceDataLibraryDao>(); this.engineeringModelSetupDao = new Mock <IEngineeringModelSetupDao>(); this.modelReferenceDataLibraryDao = new Mock <IModelReferenceDataLibraryDao>(); this.transactionManager = new Mock <ICdp4TransactionManager>(); this.transactionManager.Setup(x => x.IsFullAccessEnabled()).Returns(true); this.modelReferenceDataLibraryService = new ModelReferenceDataLibraryService { EngineeringModelSetupDao = this.engineeringModelSetupDao.Object, SiteReferenceDataLibraryDao = this.siteReferenceDataLibraryDao.Object, ModelReferenceDataLibraryDao = this.modelReferenceDataLibraryDao.Object, TransactionManager = this.transactionManager.Object }; this.siteReferenceDataLibrary1 = new SiteReferenceDataLibrary(Guid.NewGuid(), 0); this.siteReferenceDataLibrary2 = new SiteReferenceDataLibrary(Guid.NewGuid(), 0); this.modelReferenceDataLibrary = new ModelReferenceDataLibrary(Guid.NewGuid(), 0); this.iteration = new Iteration(Guid.NewGuid(), 0); this.iterationSetup = new IterationSetup(Guid.NewGuid(), 0); this.engineeringModelSetup = new EngineeringModelSetup(Guid.NewGuid(), 0); this.iteration.IterationSetup = this.iterationSetup.Iid; this.engineeringModelSetup.IterationSetup.Add(this.iterationSetup.Iid); }
public void Setup() { RxApp.MainThreadScheduler = Scheduler.CurrentThread; this.navigation = new Mock <IThingDialogNavigationService>(); this.permissionService = new Mock <IPermissionService>(); this.session = new Mock <ISession>(); this.permissionService.Setup(x => x.CanWrite(It.IsAny <Thing>())).Returns(true); this.siteDir = new SiteDirectory(Guid.NewGuid(), null, this.uri); this.siteRdl = new SiteReferenceDataLibrary(Guid.NewGuid(), null, this.uri); this.derivedUnit = new DerivedUnit(Guid.NewGuid(), null, this.uri); this.factor = new UnitFactor(Guid.NewGuid(), null, this.uri); this.derivedUnit.UnitFactor.Add(this.factor); this.unit = new SimpleUnit(Guid.NewGuid(), null, this.uri); this.siteRdl.Unit.Add(this.unit); this.factor.Unit = this.unit; this.siteDir.SiteReferenceDataLibrary.Add(this.siteRdl); this.session.Setup(x => x.PermissionService).Returns(this.permissionService.Object); this.session.Setup(x => x.RetrieveSiteDirectory()).Returns(this.siteDir); this.session.Setup(x => x.OpenReferenceDataLibraries).Returns(new HashSet <ReferenceDataLibrary>(this.siteDir.SiteReferenceDataLibrary)); var transactionContext = TransactionContextResolver.ResolveContext(this.siteDir); this.transaction = new ThingTransaction(transactionContext, null); var dal = new Mock <IDal>(); this.session.Setup(x => x.DalVersion).Returns(new Version(1, 1, 0)); this.session.Setup(x => x.Dal).Returns(dal.Object); dal.Setup(x => x.MetaDataProvider).Returns(new MetaDataProvider()); }
public void VerifyThatParametertypesFromExistingRdlsAreLoaded() { var siterefenceDataLibrary = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null); var pt1 = new TextParameterType(Guid.NewGuid(), null, null); var pt2 = new TextParameterType(Guid.NewGuid(), null, null); siterefenceDataLibrary.ParameterType.Add(pt1); siterefenceDataLibrary.ParameterType.Add(pt2); this.siteDirectory.SiteReferenceDataLibrary.Add(siterefenceDataLibrary); var engineeringModelSetup = new EngineeringModelSetup(Guid.NewGuid(), null, null); var modelReferenceDataLibrary = new ModelReferenceDataLibrary(Guid.NewGuid(), null, null); var pt3 = new BooleanParameterType(Guid.NewGuid(), null, null); var pt4 = new BooleanParameterType(Guid.NewGuid(), null, null); modelReferenceDataLibrary.ParameterType.Add(pt3); modelReferenceDataLibrary.ParameterType.Add(pt4); engineeringModelSetup.RequiredRdl.Add(modelReferenceDataLibrary); this.siteDirectory.Model.Add(engineeringModelSetup); this.session.Setup(x => x.OpenReferenceDataLibraries).Returns( new HashSet <ReferenceDataLibrary>(this.siteDirectory.SiteReferenceDataLibrary) { modelReferenceDataLibrary }); var browser = new ParameterTypesBrowserViewModel(this.session.Object, this.siteDirectory, null, null, null, null, this.favoritesService.Object); Assert.AreEqual(4, browser.ParameterTypes.Count); Assert.IsNotNull(browser.ParameterTypes.First().Thing); browser.Dispose(); Assert.IsNull(browser.ParameterTypes.First().Thing); }
public void Setup() { this.session = new Mock <ISession>(); this.uri = new Uri("http://www.rheagroup.com"); this.assembler = new Assembler(this.uri); this.permissionService = new Mock <IPermissionService>(); this.session.Setup(x => x.PermissionService).Returns(this.permissionService.Object); this.permissionService.Setup(x => x.CanRead(It.IsAny <Thing>())).Returns(true); this.permissionService.Setup(x => x.CanWrite(It.IsAny <Thing>())).Returns(true); this.siteDir = new SiteDirectory(Guid.NewGuid(), this.assembler.Cache, this.uri) { Name = "site directory" }; this.person = new Person(Guid.NewGuid(), this.assembler.Cache, this.uri) { GivenName = "John", Surname = "Doe" }; var siteReferenceDataLibrary = new SiteReferenceDataLibrary(Guid.NewGuid(), this.assembler.Cache, this.uri); this.siteDir.SiteReferenceDataLibrary.Add(siteReferenceDataLibrary); this.session.Setup(x => x.ActivePerson).Returns(this.person); this.session.Setup(x => x.Assembler).Returns(this.assembler); this.RulesViewModel = new RulesBrowserViewModel(this.session.Object, this.siteDir, null, null, null, null); }
public void Setup() { RxApp.MainThreadScheduler = Scheduler.CurrentThread; this.navigation = new Mock <IThingDialogNavigationService>(); this.permissionService = new Mock <IPermissionService>(); this.session = new Mock <ISession>(); this.siteDir = new SiteDirectory(Guid.NewGuid(), null, this.uri); this.siteRdl = new SiteReferenceDataLibrary(Guid.NewGuid(), null, this.uri); this.siteDir.SiteReferenceDataLibrary.Add(this.siteRdl); var transactionContext = TransactionContextResolver.ResolveContext(this.siteDir); this.transaction = new ThingTransaction(transactionContext, null); this.session.Setup(x => x.RetrieveSiteDirectory()).Returns(this.siteDir); this.testEnumerationValueDefinition = new EnumerationValueDefinition(Guid.NewGuid(), null, null); var dal = new Mock <IDal>(); this.session.Setup(x => x.DalVersion).Returns(new Version(1, 1, 0)); this.session.Setup(x => x.Dal).Returns(dal.Object); dal.Setup(x => x.MetaDataProvider).Returns(new MetaDataProvider()); this.viewModel = new EnumerationValueDefinitionDialogViewModel(this.testEnumerationValueDefinition, this.transaction, this.session.Object, true, ThingDialogKind.Create, this.navigation.Object, this.derivedUnit); }
public void Verify_that_when_referenced_categories_are_not_in_chain_of_Rdl_results_are_returned() { var otherSiteReferenceDataLibrary = new SiteReferenceDataLibrary(); var systemCategory = new Category { Iid = Guid.Parse("f6985d6b-9ad6-40a2-814b-c99dc6b39b2b"), ShortName = "SYS" }; var elementCategory = new Category { Iid = Guid.Parse("e13cf5d0-473a-47d7-835a-83b237924483"), ShortName = "ELE" }; otherSiteReferenceDataLibrary.DefinedCategory.Add(systemCategory); otherSiteReferenceDataLibrary.DefinedCategory.Add(elementCategory); this.decompositionRule.ContainingCategory = systemCategory; this.decompositionRule.ContainedCategory.Add(elementCategory); var results = this.decompositionRuleRuleChecker.CheckWhetherReferencedCategoryIsInChainOfRdls(this.decompositionRule); Assert.That(results.Count(), Is.EqualTo(2)); var first = results.First(); Assert.That(first.Id, Is.EqualTo("MA-0200")); Assert.That(first.Thing, Is.EqualTo(this.decompositionRule)); Assert.That(first.Severity, Is.EqualTo(SeverityKind.Error)); Assert.That(first.Description, Is.EqualTo("The ContainingCategory f6985d6b-9ad6-40a2-814b-c99dc6b39b2b:SYS of 93db34a8-251d-40aa-bd68-1e38574f585a:DECOMPRULE is not in the chain of Reference Data Libraries")); var last = results.Last(); Assert.That(last.Id, Is.EqualTo("MA-0200")); Assert.That(last.Thing, Is.EqualTo(this.decompositionRule)); Assert.That(last.Severity, Is.EqualTo(SeverityKind.Error)); Assert.That(last.Description, Is.EqualTo("The ContainedCategory e13cf5d0-473a-47d7-835a-83b237924483:ELE of 93db34a8-251d-40aa-bd68-1e38574f585a:DECOMPRULE is not in the chain of Reference Data Libraries")); }
public void VerifyThatCategoriesFromExistingRdlsAreLoaded() { var siterefenceDataLibrary = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null); var rule1 = new BinaryRelationshipRule(Guid.NewGuid(), null, null); var rule2 = new MultiRelationshipRule(Guid.NewGuid(), null, null); siterefenceDataLibrary.Rule.Add(rule1); siterefenceDataLibrary.Rule.Add(rule2); this.siteDir.SiteReferenceDataLibrary.Add(siterefenceDataLibrary); var engineeringModelSetup = new EngineeringModelSetup(Guid.NewGuid(), null, null); var modelReferenceDataLibrary = new ModelReferenceDataLibrary(Guid.NewGuid(), null, null); var rule3 = new BinaryRelationshipRule(Guid.NewGuid(), null, null); var rule4 = new MultiRelationshipRule(Guid.NewGuid(), null, null); modelReferenceDataLibrary.Rule.Add(rule3); modelReferenceDataLibrary.Rule.Add(rule4); engineeringModelSetup.RequiredRdl.Add(modelReferenceDataLibrary); this.siteDir.Model.Add(engineeringModelSetup); this.session.Setup(x => x.OpenReferenceDataLibraries).Returns(new HashSet <ReferenceDataLibrary>(this.siteDir.SiteReferenceDataLibrary) { modelReferenceDataLibrary }); var browser = new RulesBrowserViewModel(this.session.Object, this.siteDir, null, null, null, null); Assert.AreEqual(4, browser.Rules.Count); }
public void Verify_that_when_referenced_category_is_not_in_chain_of_rdl_result_is_returned() { var siteReferenceDataLibrary = new SiteReferenceDataLibrary(); var category = new Category { Iid = Guid.Parse("6766cbf6-0bea-4e9d-8c86-91c5b71ae1bd"), ShortName = "CAT" }; siteReferenceDataLibrary.DefinedCategory.Add(category); var otherSiteReferenceDataLibrary = new SiteReferenceDataLibrary(); var superCategory = new Category { Iid = Guid.Parse("c24a3bd3-99a8-4b18-a2f0-a7eae3f02f76"), ShortName = "SUPERCAT" }; otherSiteReferenceDataLibrary.DefinedCategory.Add(superCategory); category.SuperCategory.Add(superCategory); var result = this.categoryRuleChecker.CheckWhetherReferencedCategoryIsInChainOfRdls(category).First(); Assert.That(result.Id, Is.EqualTo("MA-0200")); Assert.That(result.Thing, Is.EqualTo(category)); Assert.That(result.Description, Is.EqualTo("The superCategory c24a3bd3-99a8-4b18-a2f0-a7eae3f02f76:SUPERCAT of 6766cbf6-0bea-4e9d-8c86-91c5b71ae1bd:CAT is not in the chain of Reference Data Libraries")); Assert.That(result.Severity, Is.EqualTo(SeverityKind.Error)); }
public void VerifyThatIfRuleIsNotInChainOfRdlOfRuleVerificationListDraggedDropEffectIsNone() { var ruleVerificationList = new RuleVerificationList(Guid.NewGuid(), this.cache, this.uri) { Owner = this.domain }; this.iteration.RuleVerificationList.Add(ruleVerificationList); var listRowViewModel = new RuleVerificationListRowViewModel(ruleVerificationList, this.session.Object, null); var binaryRelationshipRule = new BinaryRelationshipRule(Guid.NewGuid(), this.cache, this.uri); var siteRDL = new SiteReferenceDataLibrary(Guid.NewGuid(), this.cache, this.uri); siteRDL.Rule.Add(binaryRelationshipRule); this.sitedir.SiteReferenceDataLibrary.Add(siteRDL); var dropInfo = new Mock <IDropInfo>(); dropInfo.Setup(x => x.Payload).Returns(binaryRelationshipRule); dropInfo.SetupProperty(x => x.Effects); listRowViewModel.DragOver(dropInfo.Object); Assert.AreEqual(DragDropEffects.None, dropInfo.Object.Effects); }
public void Verify_that_when_Container_is_ReferenceDataLibrary_and_ReferenceSource_is_not_in_chain_of_Rdls_result_is_returned() { var otherSiteReferenceDataLibrary = new SiteReferenceDataLibrary(); this.siteDirectory.SiteReferenceDataLibrary.Add(otherSiteReferenceDataLibrary); var referenceSource = new ReferenceSource { Iid = Guid.Parse("3c44c0e3-d2de-43f9-9636-8235984dc4bf"), ShortName = "SOURCE" }; otherSiteReferenceDataLibrary.ReferenceSource.Add(referenceSource); var siteReferenceDataLibrary = new SiteReferenceDataLibrary(); var category = new Category(); var categoryDefinition = new Definition(); var categoryCitation = new Citation(); categoryCitation.Source = referenceSource; this.siteDirectory.SiteReferenceDataLibrary.Add(siteReferenceDataLibrary); siteReferenceDataLibrary.DefinedCategory.Add(category); category.Definition.Add(categoryDefinition); categoryDefinition.Citation.Add(categoryCitation); var result = this.citationRuleChecker.CheckWhetherReferencedReferenceSourceIsInChainOfRdls(categoryCitation).Single(); Assert.That(result.Id, Is.EqualTo("MA-0260")); Assert.That(result.Description, Is.EqualTo("The referenced ReferenceSource 3c44c0e3-d2de-43f9-9636-8235984dc4bf:SOURCE of Citation.Source is not in the chain of Reference Data Libraries")); Assert.That(result.Severity, Is.EqualTo(SeverityKind.Error)); Assert.That(result.Thing, Is.EqualTo(categoryCitation)); }
public void VerifyThatWhenCategoryIsUpdateViewModelIsUpdate() { var name = "name"; var shortname = "shortname"; var containerRdl = "containerrdl"; var category = new Category(Guid.NewGuid(), null, null) { ShortName = shortname, Name = name }; var container = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null) { ShortName = "containerrdl" }; container.DefinedCategory.Add(category); this.rowViewModel = new CategoryRowViewModel(category, this.session.Object, null); category.Name = "updated name"; category.ShortName = "updated shortname"; container.ShortName = "updated containerrdl"; // workaround to modify a read-only field var type = category.GetType(); type.GetProperty("RevisionNumber").SetValue(category, 50); CDPMessageBus.Current.SendObjectChangeEvent(category, EventKind.Updated); Assert.AreEqual("updated shortname", this.rowViewModel.ShortName); Assert.AreEqual("updated name", this.rowViewModel.Name); Assert.AreEqual("updated containerrdl", this.rowViewModel.ContainerRdl); }
public void VerifyThatExceptionIsThrownWhenNoContainerIsProvidedToIsContainedBy() { SiteDirectory sitedir = null; var rdl = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null); Assert.Throws <ArgumentNullException>(() => rdl.IsContainedBy(sitedir)); }
public void Setup() { RxApp.MainThreadScheduler = Scheduler.CurrentThread; this.cache = new ConcurrentDictionary <CacheKey, Lazy <Thing> >(); this.thingDialogNavigationService = new Mock <IThingDialogNavigationService>(); this.permissionService = new Mock <IPermissionService>(); this.permissionService.Setup(x => x.CanWrite(It.IsAny <Thing>())).Returns(true); this.session = new Mock <ISession>(); var person = new Person(Guid.NewGuid(), this.cache, null) { Container = this.siteDir }; this.session.Setup(x => x.ActivePerson).Returns(person); this.siteDir = new SiteDirectory(Guid.NewGuid(), this.cache, null); this.siteDir.Person.Add(person); this.srdl = new SiteReferenceDataLibrary(Guid.NewGuid(), this.cache, null) { Name = "testRDL", ShortName = "test" }; this.siteDir.SiteReferenceDataLibrary.Add(this.srdl); this.session.Setup(x => x.RetrieveSiteDirectory()).Returns(this.siteDir); this.session.Setup(x => x.PermissionService).Returns(this.permissionService.Object); this.session.Setup(x => x.OpenReferenceDataLibraries).Returns(new HashSet <ReferenceDataLibrary>(this.siteDir.SiteReferenceDataLibrary)); this.cache.TryAdd(new CacheKey(this.srdl.Iid, null), new Lazy <Thing>(() => this.srdl)); var dal = new Mock <IDal>(); this.session.Setup(x => x.DalVersion).Returns(new Version(1, 1, 0)); this.session.Setup(x => x.Dal).Returns(dal.Object); dal.Setup(x => x.MetaDataProvider).Returns(new MetaDataProvider()); }
public void VerifyThatGetContainerOfTypeWorks() { var sitedir = new SiteDirectory(Guid.NewGuid(), null, null); var siterdl = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null); var unit = new DerivedUnit(Guid.NewGuid(), null, null); sitedir.SiteReferenceDataLibrary.Add(siterdl); siterdl.Unit.Add(unit); Assert.AreSame(siterdl, unit.GetContainerOfType(typeof(ReferenceDataLibrary))); Assert.AreSame(siterdl, unit.GetContainerOfType(typeof(SiteReferenceDataLibrary))); Assert.AreSame(siterdl, unit.GetContainerOfType(typeof(ModelReferenceDataLibrary))); Assert.AreSame(sitedir, unit.GetContainerOfType(typeof(SiteDirectory))); Assert.IsNull(unit.GetContainerOfType(typeof(Iteration))); Assert.AreSame(siterdl, unit.GetContainerOfType <SiteReferenceDataLibrary>()); Assert.AreSame(sitedir, unit.GetContainerOfType <SiteDirectory>()); Assert.IsNull(unit.GetContainerOfType <ModelReferenceDataLibrary>()); Assert.AreSame(siterdl, unit.GetContainerOfType <ReferenceDataLibrary>()); var requirementsgroup1 = new RequirementsGroup(Guid.NewGuid(), null, null); var requirementsgroup2 = new RequirementsGroup(Guid.NewGuid(), null, null); requirementsgroup1.Group.Add(requirementsgroup2); Assert.AreSame(requirementsgroup1, requirementsgroup2.GetContainerOfType <RequirementsGroup>()); Assert.AreSame(requirementsgroup1, requirementsgroup2.GetContainerOfType(typeof(RequirementsGroup))); }
public void Setup() { RxApp.MainThreadScheduler = Scheduler.CurrentThread; this.permissionService = new Mock <IPermissionService>(); this.permissionService.Setup(x => x.CanRead(It.IsAny <Thing>())).Returns(true); this.permissionService.Setup(x => x.CanWrite(It.IsAny <Thing>())).Returns(true); this.uri = new Uri("http://www.rheagroup.com"); this.serviceLocator = new Mock <IServiceLocator>(); this.navigationService = new Mock <IDialogNavigationService>(); this.session = new Mock <ISession>(); ServiceLocator.SetLocatorProvider(() => this.serviceLocator.Object); this.serviceLocator.Setup(x => x.GetInstance <IDialogNavigationService>()) .Returns(this.navigationService.Object); var siteRdl = new SiteReferenceDataLibrary(); var siteDir = new SiteDirectory(Guid.NewGuid(), null, null); siteDir.SiteReferenceDataLibrary.Add(siteRdl); this.result = new SiteRdlSelectionDialogResult(true); this.navigationService.Setup(x => x.NavigateModal(It.IsAny <IDialogViewModel>())).Returns(this.result); this.session.Setup(x => x.RetrieveSiteDirectory()).Returns(siteDir); this.serviceLocator.Setup(x => x.GetInstance <IPermissionService>()).Returns(this.permissionService.Object); this.srdl = new SiteReferenceDataLibrary(Guid.NewGuid(), null, this.uri); }
public void VerifyThatUnitPrefixFromExistingRdlsAreLoaded() { var siterefenceDataLibrary = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null); var unitPrefix1 = new UnitPrefix(Guid.NewGuid(), null, null); var unitPrefix2 = new UnitPrefix(Guid.NewGuid(), null, null); siterefenceDataLibrary.UnitPrefix.Add(unitPrefix1); siterefenceDataLibrary.UnitPrefix.Add(unitPrefix2); this.siteDirectory.SiteReferenceDataLibrary.Add(siterefenceDataLibrary); var engineeringModelSetup = new EngineeringModelSetup(Guid.NewGuid(), null, null); var modelReferenceDataLibrary = new ModelReferenceDataLibrary(Guid.NewGuid(), null, null); var unitPrefix3 = new UnitPrefix(Guid.NewGuid(), null, null); var unitPrefix4 = new UnitPrefix(Guid.NewGuid(), null, null); modelReferenceDataLibrary.UnitPrefix.Add(unitPrefix3); modelReferenceDataLibrary.UnitPrefix.Add(unitPrefix4); engineeringModelSetup.RequiredRdl.Add(modelReferenceDataLibrary); this.siteDirectory.Model.Add(engineeringModelSetup); this.openRdlList = new List <ReferenceDataLibrary>(this.siteDirectory.SiteReferenceDataLibrary) { modelReferenceDataLibrary }; this.session.Setup(x => x.OpenReferenceDataLibraries).Returns(new HashSet <ReferenceDataLibrary>(this.openRdlList)); var browser = new UnitPrefixBrowserViewModel(this.session.Object, this.siteDirectory, null, null, null, null); Assert.AreEqual(4, browser.UnitPrefixes.Count); }
public void Verify_that_when_RelationshipCategory_is_not_in_chain_of_rdl_result_is_returned() { var siteReferenceDataLibrary = new SiteReferenceDataLibrary(); var category = new Category { Iid = Guid.Parse("e269cbd4-5b70-41ef-87ff-ceefc662a4fb"), ShortName = "CAT" }; siteReferenceDataLibrary.DefinedCategory.Add(category); var sourceCategory = new Category { Iid = Guid.Parse("5d16ca08-e01d-409e-ab38-049c11a1f1fb"), ShortName = "SOURCE" }; this.modelReferenceDataLibrary.DefinedCategory.Add(sourceCategory); var targetCategory = new Category { Iid = Guid.Parse("7dc45a22-3862-42a6-ae1e-1bc853c4dc94"), ShortName = "TARGET" }; this.modelReferenceDataLibrary.DefinedCategory.Add(targetCategory); this.binaryRelationshipRule.RelationshipCategory = category; this.binaryRelationshipRule.SourceCategory = sourceCategory; this.binaryRelationshipRule.TargetCategory = targetCategory; var result = this.binaryRelationshipRuleRuleChecker.CheckWhetherReferencedCategoriesAreInChainOfRdls(this.binaryRelationshipRule).Single(); Assert.That(result.Id, Is.EqualTo("MA-0200")); Assert.That(result.Description, Is.EqualTo("The BinaryRelationshipRule.RelationshipCategory e269cbd4-5b70-41ef-87ff-ceefc662a4fb:CAT of 426f4e96-dcfd-4589-bce0-856bea40495b:BINRULE is not in the chain of Reference Data Libraries")); Assert.That(result.Severity, Is.EqualTo(SeverityKind.Error)); Assert.That(result.Thing, Is.EqualTo(this.binaryRelationshipRule)); }
public void Setup() { RxApp.MainThreadScheduler = Scheduler.CurrentThread; this.session = new Mock <ISession>(); this.dialogNavigation = new Mock <IThingDialogNavigationService>(); this.navigation = new Mock <IPanelNavigationService>(); this.permissionService = new Mock <IPermissionService>(); this.permissionService.Setup(x => x.CanRead(It.IsAny <Thing>())).Returns(true); this.permissionService.Setup(x => x.CanWrite(It.IsAny <Thing>())).Returns(true); this.permissionService.Setup(x => x.CanWrite(It.IsAny <ClassKind>(), It.IsAny <Thing>())).Returns(true); this.uri = new Uri("http://www.rheagroup.com"); this.assembler = new Assembler(this.uri); this.siteDirectory = new SiteDirectory(Guid.NewGuid(), this.assembler.Cache, this.uri) { Name = "site directory" }; this.siteRdl = new SiteReferenceDataLibrary(Guid.NewGuid(), this.assembler.Cache, this.uri) { Name = "test RDL", Container = this.siteDirectory }; this.siteDirectory.SiteReferenceDataLibrary.Add(this.siteRdl); this.person = new Person(Guid.NewGuid(), this.assembler.Cache, this.uri) { GivenName = "John", Surname = "Doe" }; this.openRdlList = new List <ReferenceDataLibrary>(this.siteDirectory.SiteReferenceDataLibrary); this.session.Setup(x => x.ActivePerson).Returns(this.person); this.session.Setup(x => x.Assembler).Returns(this.assembler); this.session.Setup(x => x.PermissionService).Returns(this.permissionService.Object); this.browser = new UnitPrefixBrowserViewModel(this.session.Object, this.siteDirectory, this.dialogNavigation.Object, this.navigation.Object, null, null); }
public void VerifyThatGetRequiredRdlsWorks() { var srdl1 = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null); var mrdl = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null); var srdl2 = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null); var cat1 = new Category(Guid.NewGuid(), null, null); var cat2 = new Category(Guid.NewGuid(), null, null); mrdl.RequiredRdl = srdl1; srdl2.RequiredRdl = srdl1; mrdl.DefinedCategory.Add(cat1); srdl1.DefinedCategory.Add(cat2); var def = new ElementDefinition(Guid.NewGuid(), null, null); def.Category.Add(cat1); def.Category.Add(cat2); Assert.AreEqual(2, def.RequiredRdls.Count()); Assert.IsTrue(def.RequiredRdls.Contains(srdl1)); Assert.IsTrue(def.RequiredRdls.Contains(mrdl)); Assert.IsFalse(def.RequiredRdls.Contains(srdl2)); }
public void VerifyThatScalesFromExistingRdlsAreLoaded() { var siterefenceDataLibrary = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null); var ratioscale1 = new RatioScale(Guid.NewGuid(), null, null); var ratioscale2 = new RatioScale(Guid.NewGuid(), null, null); siterefenceDataLibrary.Scale.Add(ratioscale1); siterefenceDataLibrary.Scale.Add(ratioscale2); this.siteDirectory.SiteReferenceDataLibrary.Add(siterefenceDataLibrary); var engineeringModelSetup = new EngineeringModelSetup(Guid.NewGuid(), null, null); var modelReferenceDataLibrary = new ModelReferenceDataLibrary(Guid.NewGuid(), null, null); var ratioscale3 = new RatioScale(Guid.NewGuid(), null, null); var ratioscale4 = new RatioScale(Guid.NewGuid(), null, null); modelReferenceDataLibrary.Scale.Add(ratioscale3); modelReferenceDataLibrary.Scale.Add(ratioscale4); engineeringModelSetup.RequiredRdl.Add(modelReferenceDataLibrary); this.siteDirectory.Model.Add(engineeringModelSetup); this.session.Setup(x => x.OpenReferenceDataLibraries).Returns(new HashSet <ReferenceDataLibrary>(this.siteDirectory.SiteReferenceDataLibrary) { modelReferenceDataLibrary }); var browser = new MeasurementScalesBrowserViewModel(this.session.Object, this.siteDirectory, null, null, null, null); Assert.AreEqual(4, browser.MeasurementScales.Count); browser.Dispose(); Assert.IsNull(browser.MeasurementScales.First().Thing); }
public void VerifyThatCategoriesFromExistingRdlsAreLoaded() { var siterefenceDataLibrary = new SiteReferenceDataLibrary(Guid.NewGuid(), null, null); var glossary1 = new Glossary(Guid.NewGuid(), null, null); var glossary2 = new Glossary(Guid.NewGuid(), null, null); siterefenceDataLibrary.Glossary.Add(glossary1); siterefenceDataLibrary.Glossary.Add(glossary2); this.siteDirectory.SiteReferenceDataLibrary.Add(siterefenceDataLibrary); var engineeringModelSetup = new EngineeringModelSetup(Guid.NewGuid(), null, null); var modelReferenceDataLibrary = new ModelReferenceDataLibrary(Guid.NewGuid(), null, null); var glossary3 = new Glossary(Guid.NewGuid(), null, null); var glossary4 = new Glossary(Guid.NewGuid(), null, null); modelReferenceDataLibrary.Glossary.Add(glossary3); modelReferenceDataLibrary.Glossary.Add(glossary4); engineeringModelSetup.RequiredRdl.Add(modelReferenceDataLibrary); this.siteDirectory.Model.Add(engineeringModelSetup); this.session.Setup(x => x.OpenReferenceDataLibraries).Returns(new HashSet <ReferenceDataLibrary>(this.siteDirectory.SiteReferenceDataLibrary) { modelReferenceDataLibrary }); var browser = new GlossaryBrowserViewModel(this.session.Object, this.siteDirectory, null, null, null, null); Assert.AreEqual(4, browser.Glossaries.Count); }
public void VerifyThatUpdatedCategoryEventAreCaught() { var vm = new CategoryBrowserViewModel(this.session.Object, this.siteDir, null, null, null, null); var sRdl = new SiteReferenceDataLibrary(Guid.NewGuid(), this.assembler.Cache, this.uri); sRdl.Container = this.siteDir; var cat = new Category(Guid.NewGuid(), this.assembler.Cache, this.uri) { Name = "cat1", ShortName = "1", Container = sRdl }; var cat2 = new Category(Guid.NewGuid(), this.assembler.Cache, this.uri) { Name = "cat2", ShortName = "2", Container = sRdl }; CDPMessageBus.Current.SendObjectChangeEvent(cat, EventKind.Added); CDPMessageBus.Current.SendObjectChangeEvent(cat2, EventKind.Added); cat.SuperCategory.Add(cat2); // workaround to modify a read-only field var type = cat.GetType(); type.GetProperty("RevisionNumber").SetValue(cat, 50); CDPMessageBus.Current.SendObjectChangeEvent(cat, EventKind.Updated); var row1 = vm.Categories.First(); Assert.AreEqual(cat.Name, row1.Name); Assert.AreEqual(cat.ShortName, row1.ShortName); Assert.AreEqual((cat.Container as ReferenceDataLibrary).Name, row1.ContainerRdl); Assert.IsTrue(row1.SuperCategories.Contains(cat2.ShortName)); }
public void Setup() { this.assembler = new Assembler(this.uri); RxApp.MainThreadScheduler = Scheduler.CurrentThread; this.thingDialogNavigationService = new Mock <IThingDialogNavigationService>(); this.panelNavigationService = new Mock <IPanelNavigationService>(); this.permissionService = new Mock <IPermissionService>(); this.permissionService.Setup(x => x.CanRead(It.IsAny <Thing>())).Returns(true); this.permissionService.Setup(x => x.CanWrite(It.IsAny <Thing>())).Returns(true); this.permissionService.Setup(x => x.CanWrite(It.IsAny <ClassKind>(), It.IsAny <Thing>())).Returns(true); this.session = new Mock <ISession>(); this.session.Setup(x => x.PermissionService).Returns(this.permissionService.Object); this.siteDirectory = new SiteDirectory(Guid.NewGuid(), this.assembler.Cache, this.uri) { Name = "site directory" }; this.person = new Person(Guid.NewGuid(), this.assembler.Cache, this.uri) { GivenName = "John", Surname = "Doe" }; this.srdl = new SiteReferenceDataLibrary(Guid.NewGuid(), this.assembler.Cache, this.uri); this.siteDirectory.SiteReferenceDataLibrary.Add(this.srdl); this.session.Setup(x => x.ActivePerson).Returns(this.person); this.session.Setup(x => x.Assembler).Returns(this.assembler); this.glossaryBrowser = new GlossaryBrowserViewModel(this.session.Object, this.siteDirectory, this.thingDialogNavigationService.Object, this.panelNavigationService.Object, null, null); }
public void Setup() { RxApp.MainThreadScheduler = Scheduler.CurrentThread; this.cache = new ConcurrentDictionary <CacheKey, Lazy <Thing> >(); this.navigation = new Mock <IThingDialogNavigationService>(); this.permissionService = new Mock <IPermissionService>(); this.session = new Mock <ISession>(); this.siteDir = new SiteDirectory(Guid.NewGuid(), this.cache, this.uri); this.siteRdl = new SiteReferenceDataLibrary(Guid.NewGuid(), this.cache, this.uri); this.derivedUnit = new DerivedUnit(Guid.NewGuid(), this.cache, this.uri); this.unit = new SimpleUnit(Guid.NewGuid(), this.cache, this.uri); this.siteRdl.Unit.Add(this.unit); this.siteDir.SiteReferenceDataLibrary.Add(this.siteRdl); this.session.Setup(x => x.RetrieveSiteDirectory()).Returns(this.siteDir); this.cache.TryAdd(new CacheKey(this.derivedUnit.Iid, null), new Lazy <Thing>(() => this.derivedUnit)); this.clone = this.derivedUnit.Clone(false); var transactionContext = TransactionContextResolver.ResolveContext(this.siteDir); this.transaction = new ThingTransaction(transactionContext, this.clone); var dal = new Mock <IDal>(); this.session.Setup(x => x.DalVersion).Returns(new Version(1, 1, 0)); this.session.Setup(x => x.Dal).Returns(dal.Object); dal.Setup(x => x.MetaDataProvider).Returns(new MetaDataProvider()); }
public void Verify_that_when_referenced_MeasurementScale_is_not_in_chain_of_rdls_result_is_returned() { var scale = new RatioScale { Iid = Guid.Parse("1191838a-0f9f-4d2c-8369-cf729d281dee"), ShortName = "SCALE" }; var otherSiterReferenceDataLibrary = new SiteReferenceDataLibrary(); otherSiterReferenceDataLibrary.Scale.Add(scale); this.simpleQuantityKind.PossibleScale.Add(scale); this.simpleQuantityKind.DefaultScale = scale; var first = this.quantityKindRuleChecker.CheckWhetherReferencedMeasurementScaleInChainOfRdls(this.simpleQuantityKind).First(); var last = this.quantityKindRuleChecker.CheckWhetherReferencedMeasurementScaleInChainOfRdls(this.simpleQuantityKind).Last(); Assert.That(first.Id, Is.EqualTo("MA-0230")); Assert.That(first.Description, Is.EqualTo("The referenced MeasurementScale 1191838a-0f9f-4d2c-8369-cf729d281dee:SCALE in QuantityKind.PossibleScale is not in the chain of Reference Data Libraries")); Assert.That(first.Thing, Is.EqualTo(this.simpleQuantityKind)); Assert.That(first.Severity, Is.EqualTo(SeverityKind.Error)); Assert.That(last.Id, Is.EqualTo("MA-0230")); Assert.That(last.Description, Is.EqualTo("The referenced MeasurementScale 1191838a-0f9f-4d2c-8369-cf729d281dee:SCALE in QuantityKind.DefaultScale is not in the chain of Reference Data Libraries")); Assert.That(last.Thing, Is.EqualTo(this.simpleQuantityKind)); Assert.That(last.Severity, Is.EqualTo(SeverityKind.Error)); }
public void Verify_that_when_referenced_Category_is_not_in_chain_of_rdls_Result_is_returned() { var otherSiteReferenceDataLibrary = new SiteReferenceDataLibrary(); var referencingCategory = new Category { Iid = Guid.Parse("a52085b8-6b50-4d76-b699-14b2bb0af59f"), ShortName = "referencing" }; otherSiteReferenceDataLibrary.DefinedCategory.Add(referencingCategory); var referencedCategory = new Category { Iid = Guid.Parse("e0fdb079-2181-409a-ac76-256ccf5ef205"), ShortName = "referenced" }; otherSiteReferenceDataLibrary.DefinedCategory.Add(referencedCategory); this.referencerRule.ReferencingCategory = referencingCategory; this.referencerRule.ReferencedCategory.Add(referencedCategory); var results = this.referencerRuleRuleChecker.CheckWhetherReferencedCategoryIsInChainOfRdls(this.referencerRule); var first = results.First(); Assert.That(first.Id, Is.EqualTo("MA-0200")); Assert.That(first.Description, Is.EqualTo("The ReferencerRule.RelationshipCategory a52085b8-6b50-4d76-b699-14b2bb0af59f:referencing of 85c00539-410b-4208-8ee5-b9ee41f358db:RULE is not in the chain of Reference Data Libraries")); Assert.That(first.Severity, Is.EqualTo(SeverityKind.Error)); Assert.That(first.Thing, Is.EqualTo(this.referencerRule)); var last = results.Last(); Assert.That(last.Id, Is.EqualTo("MA-0200")); Assert.That(last.Description, Is.EqualTo("The ReferencerRule.ReferencedCategory e0fdb079-2181-409a-ac76-256ccf5ef205:referenced of 85c00539-410b-4208-8ee5-b9ee41f358db:RULE is not in the chain of Reference Data Libraries")); Assert.That(last.Severity, Is.EqualTo(SeverityKind.Error)); Assert.That(last.Thing, Is.EqualTo(this.referencerRule)); }