public void AssertSavingConfigurationsWork() { var vm = new RelationshipMatrixViewModel( this.iteration, this.session.Object, this.thingDialogNavigationService.Object, this.panelNavigationService.Object, this.dialogNavigationService.Object, this.pluginService.Object); vm.SourceYConfiguration.SelectedClassKind = vm.SourceYConfiguration.PossibleClassKinds.First(x => x == ClassKind.ElementDefinition); vm.SourceXConfiguration.SelectedClassKind = vm.SourceXConfiguration.PossibleClassKinds.First(x => x == ClassKind.ElementDefinition); vm.SourceYConfiguration.SelectedCategories = new List <Category>( vm.SourceYConfiguration.PossibleCategories.Where(x => x.Iid == this.catEd1.Iid || x.Iid == this.catEd2.Iid)); vm.SourceXConfiguration.SelectedCategories = new List <Category>(vm.SourceXConfiguration.PossibleCategories.Where(x => x.Iid == this.catEd2.Iid)); vm.SourceYConfiguration.SelectedBooleanOperatorKind = CategoryBooleanOperatorKind.OR; vm.RelationshipConfiguration.SelectedRule = vm.RelationshipConfiguration.PossibleRules.Single(); vm.SourceYConfiguration.IncludeSubcategories = false; Assert.DoesNotThrow(() => vm.SaveCurrentConfiguration.Execute(null)); Assert.DoesNotThrow(() => vm.ManageSavedConfigurations.Execute(null)); vm.Dispose(); }
public override void Setup() { base.Setup(); this.source = new RelationshipMatrixViewModel( this.iteration, this.session.Object, this.thingDialogNavigationService.Object, this.panelNavigationService.Object, this.dialogNavigationService.Object, this.pluginService.Object); this.selectedCategoryList = new List <Category>() { this.catEd1, this.catEd3 }; this.categoryStringResult1 = $"{this.catEd1.Name} OR {this.catEd3.Name}"; this.categoryStringResult2 = $"({this.catEd1.Name} OR {this.catEd3.Name} OR {this.catEd4.Name}) OR ({this.catEd3.Name})"; this.categoryStringResult3 = $"{this.catEd1.Name} AND {this.catEd3.Name}"; this.categoryStringResult4 = $"({this.catEd1.Name} OR {this.catEd3.Name} OR {this.catEd4.Name}) AND ({this.catEd3.Name})"; }
public void AssertViewModelWorks() { var vm = new RelationshipMatrixViewModel( this.iteration, this.session.Object, this.thingDialogNavigationService.Object, this.panelNavigationService.Object, this.dialogNavigationService.Object, this.pluginService.Object); Assert.IsFalse(vm.CanEditSourceY); Assert.IsFalse(vm.CanEditSourceX); Assert.IsFalse(vm.CanInspectSourceY); Assert.IsFalse(vm.CanInspectSourceX); Assert.AreEqual(this.participant, vm.ActiveParticipant); Assert.AreEqual($"{this.domain.Name} [{this.domain.ShortName}]", vm.DomainOfExpertise); Assert.AreEqual(this.settings.PossibleClassKinds.Count, vm.SourceYConfiguration.PossibleClassKinds.Count); Assert.AreEqual(0, vm.RelationshipConfiguration.PossibleRules.Count); vm.SourceYConfiguration.SelectedClassKind = vm.SourceYConfiguration.PossibleClassKinds.First(x => x == ClassKind.ElementDefinition); vm.SourceXConfiguration.SelectedClassKind = vm.SourceXConfiguration.PossibleClassKinds.First(x => x == ClassKind.ElementDefinition); Assert.AreEqual( this.srdl.DefinedCategory.Count(x => x.PermissibleClass.Contains(ClassKind.ElementDefinition)), vm.SourceYConfiguration.PossibleCategories.Count); Assert.AreEqual( this.srdl.DefinedCategory.Count(x => x.PermissibleClass.Contains(ClassKind.ElementDefinition)), vm.SourceXConfiguration.PossibleCategories.Count); Assert.AreEqual(this.srdl.Rule.Count, vm.RelationshipConfiguration.PossibleRules.Count); Assert.IsEmpty(vm.Matrix.Records); Assert.IsEmpty(vm.Matrix.Columns); vm.SourceYConfiguration.SelectedCategories = new List <Category>( vm.SourceYConfiguration.PossibleCategories.Where(x => x.Iid == this.catEd1.Iid || x.Iid == this.catEd2.Iid)); vm.SourceXConfiguration.SelectedCategories = new List <Category>(vm.SourceXConfiguration.PossibleCategories.Where(x => x.Iid == this.catEd2.Iid)); vm.SourceYConfiguration.SelectedBooleanOperatorKind = CategoryBooleanOperatorKind.OR; vm.RelationshipConfiguration.SelectedRule = vm.RelationshipConfiguration.PossibleRules.Single(); vm.SourceXConfiguration.SelectedOwners.Add(this.domain); vm.SourceYConfiguration.SelectedOwners.Add(this.domain); vm.SourceYConfiguration.IncludeSubcategories = false; Assert.AreEqual(3, vm.Matrix.Records.Count); Assert.AreEqual(3, vm.Matrix.Columns.Count); vm.SourceYConfiguration.IncludeSubcategories = true; Assert.AreEqual(5, vm.Matrix.Records.Count); Assert.AreEqual(3, vm.Matrix.Columns.Count); vm.SourceYConfiguration.SelectedCategories = new List <Category>(vm.SourceYConfiguration.PossibleCategories.Where(x => x.Iid == this.catEd3.Iid)); Assert.AreEqual(2, vm.Matrix.Records.Count); Assert.AreEqual(3, vm.Matrix.Columns.Count); vm.SourceYConfiguration.SelectedCategories = new List <Category>(vm.SourceYConfiguration.PossibleCategories.Where(x => x.Iid == this.catEd4.Iid)); Assert.AreEqual(1, vm.Matrix.Records.Count); Assert.AreEqual(3, vm.Matrix.Columns.Count); vm.SourceYConfiguration.SelectedCategories = new List <Category>( vm.SourceYConfiguration.PossibleCategories.Where(x => x.Iid == this.catEd1.Iid || x.Iid == this.catEd2.Iid)); vm.SourceYConfiguration.SelectedBooleanOperatorKind = CategoryBooleanOperatorKind.AND; Assert.AreEqual(1, vm.Matrix.Records.Count); Assert.AreEqual(3, vm.Matrix.Columns.Count); CDPMessageBus.Current.SendObjectChangeEvent(this.iteration, EventKind.Updated); vm.SwitchAxisCommand.Execute(null); Assert.AreEqual(2, vm.Matrix.Records.Count); Assert.AreEqual(2, vm.Matrix.Columns.Count); vm.Dispose(); }