public void GenerateOverwrite() { CompoundEdit ce = new CompoundEdit(); ICombinationsGenerator gen = new AllPairsCombinationsGenerator(dep, 80000, CombinationsGenerationOption.OVERWRITE); ce.AddEdit(gen.Generate()); Assert.AreEqual(10, dep.Combinations.Count); Assert.AreEqual(1, dep.Combinations[0].Position); Assert.IsTrue(dep.Combinations[0].EquivalenceClasses.Contains(eq11)); Assert.IsTrue(dep.Combinations[0].EquivalenceClasses.Contains(eq21)); Assert.IsTrue(dep.Combinations[0].EquivalenceClasses.Contains(eq31)); Assert.AreEqual(2, dep.Combinations[1].Position); Assert.IsTrue(dep.Combinations[1].EquivalenceClasses.Contains(eq11)); Assert.IsTrue(dep.Combinations[1].EquivalenceClasses.Contains(eq22)); Assert.IsTrue(dep.Combinations[1].EquivalenceClasses.Contains(eq32)); //Assert.AreEqual(3, dep.Combinations[2].Position); //Assert.IsTrue(dep.Combinations[2].EquivalenceClasses.Contains(eq11)); //Assert.IsTrue(dep.Combinations[2].EquivalenceClasses.Contains(eq23)); //Assert.IsTrue(dep.Combinations[2].EquivalenceClasses.Contains(eq33)); //Assert.AreEqual(7, dep.Combinations[6].Position); //Assert.IsTrue(dep.Combinations[6].EquivalenceClasses.Contains(eq12)); //Assert.IsTrue(dep.Combinations[6].EquivalenceClasses.Contains(eq22)); //Assert.IsTrue(dep.Combinations[6].EquivalenceClasses.Contains(eq33)); ce.EndAllEdits(); ce.Undo(); Assert.IsTrue(dep.Combinations.Count == 0); }
public IUndoableEdit GenerateCombinations(CombinationsGenerationOperation operation, Dependency dependency, int maxNumberofCombinations, CombinationsGenerationOption options) { IGenerator gen; if (operation == CombinationsGenerationOperation.ALLPAIRS) { gen = new AllPairsCombinationsGenerator(dependency, maxNumberofCombinations, options); } else { gen = new PermutationCombinationsGenerator(dependency, maxNumberofCombinations, options); } return(gen.Generate()); }
public void GenerateUpdateDeleteEquivalence() { CompoundEdit ce = new CompoundEdit(); ICombinationsGenerator gen = new AllPairsCombinationsGenerator(dep, 80000, CombinationsGenerationOption.OVERWRITE); ce.AddEdit(gen.Generate()); //deleting an equivalence ICombinationsGenerator genUpdater = new AllPairsCombinationsGenerator(dep, 80000, CombinationsGenerationOption.UPDATE); ce.AddEdit(EditFactory.instance.CreateRemoveEquivalenceClassEdit(dep, eq12)); dep.RemoveEquivalenceClass(eq12); ce.AddEdit(genUpdater.Generate()); Assert.AreEqual(9, dep.Combinations.Count); Assert.AreEqual(9, dep.Combinations[8].Position); Assert.IsTrue(dep.Combinations[8].EquivalenceClasses.Contains(eq13)); Assert.IsTrue(dep.Combinations[8].EquivalenceClasses.Contains(eq23)); Assert.IsTrue(dep.Combinations[8].EquivalenceClasses.Contains(eq31)); ce.EndAllEdits(); ce.Undo(); Assert.IsTrue(dep.Combinations.Count == 0); }