package org.peerbox.testutils; import java.net.UnknownHostException; import java.util.ArrayList; import java.util.List; import org.peerbox.app.manager.node.INodeManager; import org.peerbox.app.manager.node.NodeManager; public class NetworkTestUtil { public static List<INodeManager> createNetwork(int size) { if(size < 1) { throw new IllegalArgumentException("size must be >= 1"); } List<INodeManager> nodes = new ArrayList<>(); INodeManager initial = new NodeManager(null); initial.createNetwork(); nodes.add(initial); for (int i = 1; i < size; ++i) { try { INodeManager n = new NodeManager(null); n.joinNetwork("localhost"); nodes.add(n); } catch (UnknownHostException e) { // should not happen... on local host e.printStackTrace(); } } return nodes; } public static void shutdownNetwork(List<INodeManager> nodes) { for (INodeManager node : nodes) { node.leaveNetwork(); } } }