assertEquals(12, edges.size()); // 2 outgoing and 2 incoming nodes.
}
+ public void testApplyFilter() {
+ Graph graph = new Graph();
+ graph.addNode(new DefaultNode("x"));
+ graph.addNode(new DefaultNode("y"));
+ graph.addNode(new DefaultNode("z"));
+ graph.addEdge(new DefaultEdge(graph.findNode("x"), graph.findNode("y")));
+ graph.addEdge(new DefaultEdge(graph.findNode("y"), graph.findNode("z")));
+ graph.addEdge(new DefaultEdge(graph.findNode("z"), graph.findNode("x")));
+
+ assertEquals(3, graph.getEdges().size());
+
+ graph.applyFilter(new EdgeFilter() {
+ @Override
+ public boolean isViolated(Edge aEdge) {
+ if (aEdge.getFrom().getName().equals("x")) {
+ return false;
+ }
+ return true;
+ }
+ });
+
+ assertEquals(1, graph.getEdges().size());
+ assertEquals("x", graph.getEdges().get(0).getFrom().getName());
+
+ }
+
public void testFindIncomingOutgoing() {
Graph graph = new Graph();
Node x = new DefaultNode("x");