// tests for method reverse() boolean testReverse(Tester t) { ILoI mt = new MT(); ILoI l1 = new Cons(1, mt); ILoI l2 = new Cons(2, l1); ILoI l3 = new Cons(2, mt); ILoI l4 = new Cons(1, l3); return t.checkExpect(mt.reverse(), mt) && t.checkExpect(l2.reverse(), l4); }
// tests for method append() boolean testAppend(Tester t) { ILoI mt = new MT(); ILoI l1 = new Cons(1, mt); ILoI l2 = new Cons(2, l1); ILoI l3 = new Cons(2, mt); ILoI l4 = new Cons(1, l3); return t.checkExpect(l1.append(mt), l1) && t.checkExpect(l2.append(mt), l2) && t.checkExpect(l1.append(l3), l4); }
// tests for method sum() boolean testSum(Tester t) { ILoI mt = new MT(); ILoI l1 = new Cons(1, mt); ILoI l2 = new Cons(2, l1); return t.checkExpect(mt.sum(), 0) && t.checkExpect(l1.sum(), 1) && t.checkExpect(l2.sum(), 3); }