@Test
  public void testUpdate() throws Exception {
    CreateResponse createResponse =
        storeContentItem(TEST_INPUT_CONTENTS, NITF_MIME_TYPE, TEST_INPUT_FILENAME);
    String id = createResponse.getCreatedContentItem().getId();
    ContentItem updateItem =
        new IncomingContentItem(id, IOUtils.toInputStream("Updated NITF"), NITF_MIME_TYPE);
    UpdateRequest updateRequest = new UpdateRequestImpl(updateItem);

    UpdateResponse updateResponse = provider.update(updateRequest);
    ContentItem item = updateResponse.getUpdatedContentItem();

    LOGGER.debug("Item retrieved: {}", item);
    assertEquals(id, item.getId());
    assertEquals(NITF_MIME_TYPE, item.getMimeTypeRawData());

    String expectedFilePath = BASE_DIR + File.separator + id + File.separator + item.getFilename();
    assertThat(item.getFile().getAbsolutePath(), endsWith(expectedFilePath));
    assertTrue(item.getSize() > 0);
    assertTrue(item.getFile().exists());

    String updatedFileContents = getFileContentsAsString(item.getFile().getAbsolutePath());
    assertEquals("Updated NITF", updatedFileContents);
  }