public void RemoveCluster() { var wrappedGraph = new AdjacencyGraph <int, Edge <int> >(); var graph = new ClusteredAdjacencyGraph <int, Edge <int> >(wrappedGraph); AssertNoCluster(graph); IClusteredGraph cluster = graph.AddCluster(); IClusteredGraph cluster2 = graph.AddCluster(); IClusteredGraph cluster3 = graph.AddCluster(); var wrappedGraph2 = new AdjacencyGraph <int, Edge <int> >(); var graphNotInClusters = new ClusteredAdjacencyGraph <int, Edge <int> >(wrappedGraph2); graph.RemoveCluster(graphNotInClusters); AssertHasClusters(graph, new[] { cluster, cluster2, cluster3 }); graph.RemoveCluster(cluster2); AssertHasClusters(graph, new[] { cluster, cluster3 }); graph.RemoveCluster(cluster); AssertHasClusters(graph, new[] { cluster3 }); graph.RemoveCluster(cluster3); AssertNoCluster(graph); }
public void RemoveCluster_Throws() { var wrappedGraph = new AdjacencyGraph <int, Edge <int> >(); var graph = new ClusteredAdjacencyGraph <int, Edge <int> >(wrappedGraph); // ReSharper disable once AssignNullToNotNullAttribute Assert.Throws <ArgumentNullException>(() => graph.RemoveCluster(null)); }