@Override public void adjacentEdges_checkReturnedSetMutability() { addEdge(N1, N2, E12); Set<String> adjacentEdges = network.adjacentEdges(E12); try { adjacentEdges.add(E23); fail(ERROR_MODIFIABLE_COLLECTION); } catch (UnsupportedOperationException e) { addEdge(N2, N3, E23); assertThat(network.adjacentEdges(E12)).containsExactlyElementsIn(adjacentEdges); } }
@Override public void adjacentEdges_checkReturnedSetMutability() { addEdge(N1, N2, E12); Set<String> adjacentEdges = network.adjacentEdges(E12); try { adjacentEdges.add(E23); fail(ERROR_MODIFIABLE_COLLECTION); } catch (UnsupportedOperationException e) { addEdge(N2, N3, E23); assertThat(network.adjacentEdges(E12)).containsExactlyElementsIn(adjacentEdges); } }
@Test public void adjacentEdges_noAdjacentEdges() { addEdge(N1, N2, E12); addEdge(N3, N4, E34); assertThat(network.adjacentEdges(E12)).isEmpty(); }
@Test public void adjacentEdges_selfLoop() { addEdge(N1, N1, E11); addEdge(N1, N2, E12); assertThat(network.adjacentEdges(E11)).containsExactly(E12); }
@Test public void adjacentEdges_edgeNotInGraph() { try { network.adjacentEdges(EDGE_NOT_IN_GRAPH); fail(ERROR_EDGE_NOT_IN_GRAPH); } catch (IllegalArgumentException e) { assertEdgeNotInGraphErrorMessage(e); } }
@Test public void adjacentEdges_selfLoop() { addEdge(N1, N1, E11); addEdge(N1, N2, E12); assertThat(network.adjacentEdges(E11)).containsExactly(E12); }
@Test public void adjacentEdges_bothEndpoints() { addEdge(N1, N2, E12); addEdge(N2, N3, E23); addEdge(N3, N1, E31); addEdge(N3, N4, E34); assertThat(network.adjacentEdges(E12)).containsExactly(E31, E23); }
@Test public void adjacentEdges_parallelEdges() { addEdge(N1, N2, E12); addEdge(N1, N2, E12_A); addEdge(N1, N2, E12_B); addEdge(N3, N4, E34); assertThat(network.adjacentEdges(E12)).containsExactly(E12_A, E12_B); }
@Test public void adjacentEdges_parallelEdges() { addEdge(N1, N2, E12); addEdge(N1, N2, E12_A); addEdge(N1, N2, E12_B); addEdge(N3, N4, E34); assertThat(network.adjacentEdges(E12)).containsExactly(E12_A, E12_B); }
@Override public Set<E> adjacentEdges(E edge) { return delegate.adjacentEdges(edge); }
@Override public Set<E> adjacentEdges(E edge) { checkNotNull(edge, "edge"); return delegate.adjacentEdges(edge); }
@Override public void adjacentEdges_checkReturnedSetMutability() { addEdge(N1, N2, E12); Set<String> adjacentEdges = network.adjacentEdges(E12); try { adjacentEdges.add(E23); fail(ERROR_MODIFIABLE_COLLECTION); } catch (UnsupportedOperationException e) { addEdge(N2, N3, E23); assertThat(network.adjacentEdges(E12)).containsExactlyElementsIn(adjacentEdges); } }
@Override public void adjacentEdges_checkReturnedSetMutability() { addEdge(N1, N2, E12); Set<String> adjacentEdges = network.adjacentEdges(E12); try { adjacentEdges.add(E23); fail(ERROR_MODIFIABLE_COLLECTION); } catch (UnsupportedOperationException e) { addEdge(N2, N3, E23); assertThat(network.adjacentEdges(E12)).containsExactlyElementsIn(adjacentEdges); } }
@Test public void adjacentEdges_edgeNotInGraph() { try { network.adjacentEdges(EDGE_NOT_IN_GRAPH); fail(ERROR_EDGE_NOT_IN_GRAPH); } catch (IllegalArgumentException e) { assertEdgeNotInGraphErrorMessage(e); } }
@Test public void adjacentEdges_selfLoop() { addEdge(N1, N1, E11); addEdge(N1, N2, E12); assertThat(network.adjacentEdges(E11)).containsExactly(E12); }
@Test public void adjacentEdges_selfLoop() { addEdge(N1, N1, E11); addEdge(N1, N2, E12); assertThat(network.adjacentEdges(E11)).containsExactly(E12); }
@Test public void adjacentEdges_noAdjacentEdges() { addEdge(N1, N2, E12); addEdge(N3, N4, E34); assertThat(network.adjacentEdges(E12)).isEmpty(); }
@Test public void adjacentEdges_bothEndpoints() { addEdge(N1, N2, E12); addEdge(N2, N3, E23); addEdge(N3, N1, E31); addEdge(N3, N4, E34); assertThat(network.adjacentEdges(E12)).containsExactly(E31, E23); }
@Test public void adjacentEdges_parallelEdges() { addEdge(N1, N2, E12); addEdge(N1, N2, E12_A); addEdge(N1, N2, E12_B); addEdge(N3, N4, E34); assertThat(network.adjacentEdges(E12)).containsExactly(E12_A, E12_B); }
@Test public void adjacentEdges_parallelEdges() { addEdge(N1, N2, E12); addEdge(N1, N2, E12_A); addEdge(N1, N2, E12_B); addEdge(N3, N4, E34); assertThat(network.adjacentEdges(E12)).containsExactly(E12_A, E12_B); }