@Override
  public Changeset getChangesetForLine(int lineNumber) {
    if (!hasChangesetForLine(lineNumber)) {
      throw new IllegalArgumentException("There's no changeset on line " + lineNumber);
    }
    return lineChangesets[lineNumber - 1];
  }
@Test
  public void fail_with_IAE_when_line_is_bigger_than_changetset_size() {
    assertThatThrownBy(() -> {
      ScmInfo scmInfo = createScmInfoWithTwoChangestOnFourLines();
      scmInfo.getChangesetForLine(5);
    })
      .isInstanceOf(IllegalArgumentException.class)
      .hasMessage("There's no changeset on line 5");
  }