@Test
void should_DetermineDifferences_When_ComparingEmptyTaskWithNonEmptyTask() {

  TaskImpl newTask = new TaskImpl();
  newTask.setOwner("new Owner");
  newTask.setCreator("new Creator");
  newTask.setId("new ID");
  newTask.setCreated(Instant.now());
  newTask.setModified(Instant.now());
  newTask.setClassificationKey("new ClassificationKey");
  newTask.setWorkbasketKey("new WorkbasketKey");
  newTask.setBusinessProcessId("new BusinessProcessId");
  newTask.setCallbackState(CallbackState.CALLBACK_PROCESSING_REQUIRED);
  TaskImpl oldTask = new TaskImpl();
  JSONArray changedAttributes =
      new JSONObject(ObjectAttributeChangeDetector.determineChangesInAttributes(oldTask, newTask))
          .getJSONArray("changes");
  assertThat(changedAttributes).hasSize(9);
  changedAttributes =
      new JSONObject(ObjectAttributeChangeDetector.determineChangesInAttributes(newTask, oldTask))
          .getJSONArray("changes");
  assertThat(changedAttributes).hasSize(9);
}