assertEquals(0, node.getRunningTopologies().size()); assertTrue(node.isTotallyFree()); assertEquals(4, node.totalSlotsFree()); executors11.add(new ExecutorDetails(1, 1)); node.assign(node.getFreeSlots().iterator().next(), topology1, executors11); assertEquals(1, node.getRunningTopologies().size()); assertFalse(node.isTotallyFree()); assertEquals(3, node.totalSlotsFree()); executors12.add(new ExecutorDetails(2, 2)); node.assign(node.getFreeSlots().iterator().next(), topology1, executors12); assertEquals(1, node.getRunningTopologies().size()); assertFalse(node.isTotallyFree()); assertEquals(2, node.totalSlotsFree()); executors21.add(new ExecutorDetails(1, 1)); node.assign(node.getFreeSlots().iterator().next(), topology2, executors21); assertEquals(2, node.getRunningTopologies().size()); assertFalse(node.isTotallyFree()); assertEquals(1, node.totalSlotsFree()); executors22.add(new ExecutorDetails(2, 2)); node.assign(node.getFreeSlots().iterator().next(), topology2, executors22); assertEquals(2, node.getRunningTopologies().size()); assertFalse(node.isTotallyFree()); assertEquals(0, node.totalSlotsFree()); assertEquals(0, node.getRunningTopologies().size());