public void ClearTransitionFactories() { var graph = new AdjacencyGraph <CloneableTestVertex, Edge <CloneableTestVertex> >(); var algorithm = new CloneableVertexGraphExplorerAlgorithm <CloneableTestVertex, Edge <CloneableTestVertex> >(graph); var vertex1 = new CloneableTestVertex("1"); var vertex2 = new CloneableTestVertex("2"); var vertex3 = new CloneableTestVertex("3"); var edge11 = new Edge <CloneableTestVertex>(vertex1, vertex1); var edge12 = new Edge <CloneableTestVertex>(vertex1, vertex2); var edge13 = new Edge <CloneableTestVertex>(vertex1, vertex3); var edge23 = new Edge <CloneableTestVertex>(vertex2, vertex3); var edge33 = new Edge <CloneableTestVertex>(vertex3, vertex3); var factory1 = new TestTransitionFactory <CloneableTestVertex>(new[] { new TestTransitionFactory <CloneableTestVertex> .VertexEdgesSet(vertex1, new[] { edge11, edge12, edge13 }), new TestTransitionFactory <CloneableTestVertex> .VertexEdgesSet(vertex2, new[] { edge23 }) }); algorithm.AddTransitionFactory(factory1); var factory2 = new TestTransitionFactory <CloneableTestVertex>(vertex3, new[] { edge33 }); algorithm.AddTransitionFactory(factory2); algorithm.ClearTransitionFactories(); Assert.IsFalse(algorithm.ContainsTransitionFactory(factory1)); Assert.IsFalse(algorithm.ContainsTransitionFactory(factory2)); }
public void ContainsTransitionFactories() { var graph = new AdjacencyGraph <CloneableTestVertex, Edge <CloneableTestVertex> >(); var algorithm = new CloneableVertexGraphExplorerAlgorithm <CloneableTestVertex, Edge <CloneableTestVertex> >(graph); var vertex1 = new CloneableTestVertex("1"); var factory1 = new TestTransitionFactory <CloneableTestVertex>(vertex1, Enumerable.Empty <Edge <CloneableTestVertex> >()); Assert.IsFalse(algorithm.ContainsTransitionFactory(null)); Assert.IsFalse(algorithm.ContainsTransitionFactory(factory1)); algorithm.AddTransitionFactory(factory1); Assert.IsFalse(algorithm.ContainsTransitionFactory(null)); Assert.IsTrue(algorithm.ContainsTransitionFactory(factory1)); var vertex2 = new CloneableTestVertex("2"); var factory2 = new TestTransitionFactory <CloneableTestVertex>(vertex2, Enumerable.Empty <Edge <CloneableTestVertex> >()); algorithm.AddTransitionFactory(factory2); Assert.IsFalse(algorithm.ContainsTransitionFactory(null)); Assert.IsTrue(algorithm.ContainsTransitionFactory(factory1)); Assert.IsTrue(algorithm.ContainsTransitionFactory(factory2)); algorithm.RemoveTransitionFactory(factory1); Assert.IsFalse(algorithm.ContainsTransitionFactory(null)); Assert.IsFalse(algorithm.ContainsTransitionFactory(factory1)); Assert.IsTrue(algorithm.ContainsTransitionFactory(factory2)); }