@Test
public void shouldModifySingleAction() throws Exception {

    // given
    final String preparationId = createPreparation("1234", "my preparation");
    final String firstStepId = applyTransformation(preparationId, "actions/append_upper_case.json");
    Preparation preparation = repository.get(preparationId, Preparation.class);
    final long oldModificationDate = preparation.getLastModificationDate();
    // when
    try (InputStream inputStream =
            PreparationControllerTest.class.getResourceAsStream("actions/append_update_upper_case.json")) {
        given()
                .body(IOUtils.toString(inputStream, UTF_8))//
                .contentType(ContentType.JSON)//
                .when()//
                .put("/preparations/{id}/actions/{action}", preparationId, firstStepId);
        // then
        preparation = repository.get(preparationId, Preparation.class);
        assertThat(preparation.getLastModificationDate(), is(greaterThan(oldModificationDate)));
        final Step head = repository.get(preparation.getHeadId(), Step.class);
        assertThat(head.getParent(), is(Step.ROOT_STEP.getId()));
    }
}