@Test
public void updateRawContentWithDifferentSchema() throws Exception {

    String dataSetId = UUID.randomUUID().toString();
    DataSetMetadata dataSetMetadata = metadataBuilder.metadata().id(dataSetId).build();
    dataSetMetadataRepository.save(dataSetMetadata);
    given()
            .body(IOUtils.toString(this.getClass().getResourceAsStream(TAGADA_CSV), UTF_8))
            .when()
            .put("/datasets/{id}/raw", dataSetId)
            .then()
            .statusCode(OK.value());
    final DataSetMetadata dataSetMetadataBeforeUpdate = dataSetMetadataRepository.get(dataSetId);
    assertEquals(6, dataSetMetadataBeforeUpdate.getRowMetadata().getColumns().size());
    given()
            .body(IOUtils.toString(this.getClass().getResourceAsStream("../avengers.csv"), UTF_8))
            .when()
            .put("/datasets/{id}/raw", dataSetId)
            .then()
            .statusCode(OK.value());
    final DataSetMetadata dataSetMetadataAfterUpdate = dataSetMetadataRepository.get(dataSetId);
    assertEquals(5, dataSetMetadataAfterUpdate.getRowMetadata().getColumns().size());
}