@Test
  public void shouldReturnExpectedStringsViaJson()
      throws OperationException, SerialisationException {
    // Given
    final User user01 = new User("user01");
    final JSONSerialiser serialiser = new JSONSerialiser();
    final OperationChain<?> addOpChain =
        serialiser.deserialise(
            StreamUtil.openStream(LoadAndQuery.class, RESOURCE_EXAMPLE_PREFIX + "json/load.json"),
            OperationChain.class);
    final OperationChain<CloseableIterable<String>> queryOpChain =
        serialiser.deserialise(
            StreamUtil.openStream(LoadAndQuery.class, RESOURCE_EXAMPLE_PREFIX + "json/query.json"),
            OperationChain.class);

    // Setup graph
    final Graph graph =
        new Graph.Builder()
            .storeProperties(
                StreamUtil.openStream(
                    LoadAndQuery.class, RESOURCE_PREFIX + "mockaccumulostore.properties"))
            .addSchemas(
                StreamUtil.openStreams(LoadAndQuery.class, RESOURCE_EXAMPLE_PREFIX + "schema"))
            .build();

    // When
    graph.execute(addOpChain, user01); // Execute the add operation chain on the graph
    final CloseableIterable<String> results =
        graph.execute(queryOpChain, user01); // Execute the query operation on the graph.

    // Then
    verifyResults(results);
  }