@Override
  public boolean apply(InputFile inputFile) {
    return originalPredicate.apply(inputFile) && InputFile.Status.SAME != inputFile.status();
  }
@Test
  public void predicate_is_evaluated_before_file_status() {
    when(predicate.apply(inputFile)).thenReturn(false);

    Assertions.assertThat(underTest.apply(inputFile)).isFalse();

    verify(inputFile, never()).status();
  }