### Question:
ExecutionVertexVersioner { public boolean isModified(final ExecutionVertexVersion executionVertexVersion) { final Long currentVersion = executionVertexToVersion.get(executionVertexVersion.getExecutionVertexId()); Preconditions.checkState(currentVersion != null, "Execution vertex %s does not have a recorded version", executionVertexVersion.getExecutionVertexId()); return currentVersion != executionVertexVersion.getVersion(); }  ExecutionVertexVersion recordModification(final ExecutionVertexID executionVertexId); Map<ExecutionVertexID, ExecutionVertexVersion> recordVertexModifications(
		final Collection<ExecutionVertexID> vertices); boolean isModified(final ExecutionVertexVersion executionVertexVersion); Set<ExecutionVertexID> getUnmodifiedExecutionVertices(final Set<ExecutionVertexVersion> executionVertexVersions);  }### Answer:
@Test public void throwsExceptionIfVertexWasNeverModified() { try { executionVertexVersioner.isModified(new ExecutionVertexVersion(TEST_EXECUTION_VERTEX_ID1, 0)); fail("Expected exception not thrown"); } catch (final IllegalStateException e) { assertThat(e.getMessage(), containsString("Execution vertex " + TEST_EXECUTION_VERTEX_ID1 + " does not have a recorded version")); } }