@Test
 public void reverseInjectIntoOnFromToByInterval() {
   Interval interval = Interval.oneTo(5);
   Assert.assertEquals(Integer.valueOf(20), interval.reverseInjectInto(5, AddFunction.INTEGER));
   Assert.assertEquals(
       Integer.valueOf(20), interval.reverseThis().reverseInjectInto(5, AddFunction.INTEGER));
 }
 @Test
 public void reverseThis() {
   Interval interval = Interval.fromToBy(5, 1, -1);
   Interval interval2 = interval.reverseThis();
   List<Integer> result = new ArrayList<>();
   interval2.forEach(CollectionAddProcedure.on(result));
   Assert.assertEquals(FastList.newListWith(1, 2, 3, 4, 5), result);
 }
 @Test
 public void rejectOnFromToInterval() {
   Interval interval = Interval.oneTo(5);
   Assert.assertEquals(
       FastList.newListWith(1, 3, 5), interval.reject(IntegerPredicates.isEven()).toList());
   Assert.assertEquals(
       FastList.newListWith(5, 3, 1),
       interval.reverseThis().reject(IntegerPredicates.isEven()).toList());
 }
 @Test
 public void selectOnFromToInterval() {
   Interval interval = Interval.oneTo(5);
   Assert.assertEquals(
       FastList.newListWith(2, 4), interval.select(IntegerPredicates.isEven()).toList());
   Assert.assertEquals(
       FastList.newListWith(4, 2),
       interval.reverseThis().select(IntegerPredicates.isEven()).toList());
 }
  @Test
  public void reverseForEachOnFromToInterval() {
    List<Integer> result = new ArrayList<>();
    Interval interval = Interval.oneTo(5);
    interval.reverseForEach(result::add);
    Verify.assertSize(5, result);
    Verify.assertContains(1, result);
    Verify.assertContains(5, result);
    Assert.assertEquals(Integer.valueOf(5), Iterate.getFirst(result));
    Assert.assertEquals(Integer.valueOf(1), Iterate.getLast(result));

    result.clear();
    interval.reverseThis().reverseForEach(result::add);
    Verify.assertSize(5, result);
    Verify.assertContains(1, result);
    Verify.assertContains(5, result);
    Assert.assertEquals(Integer.valueOf(1), Iterate.getFirst(result));
    Assert.assertEquals(Integer.valueOf(5), Iterate.getLast(result));
  }