1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.functor.core.comparator;
18
19 import static org.junit.Assert.assertEquals;
20
21 import java.util.Collections;
22
23 import org.apache.commons.functor.BaseFunctorTest;
24 import org.junit.Test;
25
26
27
28
29
30 public class TestMax extends BaseFunctorTest {
31
32
33
34
35 protected Object makeFunctor() {
36 return Max.instance();
37 }
38
39 private Integer MIN = new Integer(Integer.MIN_VALUE);
40 private Integer MINUS_TWO = new Integer(-2);
41 private Integer ZERO = new Integer(0);
42 private Integer ONE = new Integer(1);
43 private Integer MAX = new Integer(Integer.MAX_VALUE);
44
45
46
47 @Test
48 public void testEvaluate() {
49 Max<Integer> f = Max.instance();
50 assertEquals(ONE,f.evaluate(ONE,ONE));
51 assertEquals(ONE,f.evaluate(ZERO,ONE));
52 assertEquals(ONE,f.evaluate(ONE,ZERO));
53 assertEquals(MAX,f.evaluate(ONE,MAX));
54 assertEquals(MAX,f.evaluate(MIN,MAX));
55 assertEquals(MINUS_TWO,f.evaluate(MIN,MINUS_TWO));
56 }
57
58 @Test
59 @SuppressWarnings("unchecked")
60 public void testEquals() {
61 Max<Comparable<?>> f = Max.instance();
62 assertObjectsAreEqual(f,f);
63 assertObjectsAreEqual(f,Max.instance());
64 assertObjectsAreEqual(f,new Max<Comparable<?>>(ComparableComparator.INSTANCE));
65 assertObjectsAreNotEqual(f,new Max<Comparable<?>>(Collections.<Comparable<?>>reverseOrder()));
66 }
67 }