source: class RemoveTest {
  
      @Test
      public void shouldRemoveInstancesOnlyOnce() throws Exception {
  
target: 
          final Remove sut = new Remove(
                  debt(thomas, amount(2.5), simon)
          );
  
          final ArrayList<Debt> existingTransactions = new ArrayList<>(
                  Arrays.asList(
                          debt(thomas, amount(2.5), simon),
                          debt(thomas, amount(2.5), simon)
                  )
          );
  
  
          sut.applyTo(existingTransactions);
  
  
          assertThat(existingTransactions, allOf(
                  iterableWithSize(1),
                  hasItem(
                          debt(thomas, amount(2.5), simon)
                  )
          ));
      }
  
  }