@Test
  public void testBasicFeatures() {
    assertTrue(graph.contains('A'));
    assertTrue(graph.contains('E'));
    assertTrue(graph.contains('G'));
    assertFalse(graph.contains('H'));
    assertFalse(graph.contains('Q'));
    assertFalse(graph.contains('Ä'));

    assertTrue(graph.edgeExistsBetween('A', 'B'));
    assertTrue(graph.edgeExistsBetween('D', 'G'));
    assertTrue(graph.edgeExistsBetween('G', 'E'));
    assertTrue(graph.edgeExistsBetween('D', 'C'));
    assertFalse(graph.edgeExistsBetween('A', 'G'));
    assertFalse(graph.edgeExistsBetween('E', 'C'));
    assertFalse(graph.edgeExistsBetween('D', 'H'));
    assertFalse(graph.edgeExistsBetween('I', 'F'));

    assertEquals(ORIGINAL_NUMBER_OF_NODES, graph.getNumberOfNodes());
    assertEquals(ORIGINAL_NUMBER_OF_EDGES, graph.getNumberOfEdges());
    assertEquals(ORIGINAL_EDGE_WEIGHT, graph.getTotalEdgeWeight());
  }