@Override
  public List<RegisteredMigrationStep> readFrom(long migrationNumber) {
    validate(migrationNumber);
    int startingIndex = lookupIndexOfClosestTo(migrationNumber);
    if (startingIndex < 0) {
      return Collections.emptyList();
    }
    return steps.subList(startingIndex, steps.size());
  }
@Test
  public void readFrom_returns_stream_of_sublist_from_the_first_migration_with_number_greater_or_equal_to_argument() {
    verifyContainsNumbers(underTest.readFrom(1), 1L, 2L, 8L);
    verifyContainsNumbers(underTest.readFrom(2), 2L, 8L);
    verifyContainsNumbers(underTest.readFrom(3), 8L);
    verifyContainsNumbers(underTest.readFrom(4), 8L);
    verifyContainsNumbers(underTest.readFrom(5), 8L);
    verifyContainsNumbers(underTest.readFrom(6), 8L);
    verifyContainsNumbers(underTest.readFrom(7), 8L);
    verifyContainsNumbers(underTest.readFrom(8), 8L);
  }