@Test public void shouldHaveNoChanges() throws Exception { assertThat(new NotCombinable(), hasChanges(equalTo(false))); }
@Override public boolean hasChanges() { return false; }
NotCombinable implements CombinationResult { @Override public boolean hasChanges() { return false; } }
NotCombinable implements CombinationResult { @Override public boolean hasChanges() { return false; }  }
NotCombinable implements CombinationResult { @Override public boolean hasChanges() { return false; }  @Override boolean hasChanges(); @Override void applyTo(Collection<Debt> debts); @Override boolean equals(Object obj); }
NotCombinable implements CombinationResult { @Override public boolean hasChanges() { return false; }  @Override boolean hasChanges(); @Override void applyTo(Collection<Debt> debts); @Override boolean equals(Object obj);  }