1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.functor.adapter;
18
19 import static org.junit.Assert.assertEquals;
20 import static org.junit.Assert.assertNotNull;
21 import static org.junit.Assert.assertNull;
22
23 import org.apache.commons.functor.BaseFunctorTest;
24 import org.apache.commons.functor.Function;
25 import org.apache.commons.functor.Procedure;
26 import org.apache.commons.functor.core.Constant;
27 import org.apache.commons.functor.core.NoOp;
28 import org.junit.Test;
29
30
31
32
33
34 public class TestProcedureFunction extends BaseFunctorTest {
35
36
37
38
39 protected Object makeFunctor() {
40 return new ProcedureFunction<Object>(NoOp.INSTANCE);
41 }
42
43
44
45
46 @Test
47 public void testEvaluate() throws Exception {
48 Function<Object> f = new ProcedureFunction<Object>(NoOp.INSTANCE);
49 assertNull(f.evaluate());
50 }
51
52 @Test
53 public void testEquals() throws Exception {
54 Function<Object> f = new ProcedureFunction<Object>(NoOp.INSTANCE);
55 assertEquals(f,f);
56 assertObjectsAreEqual(f,new ProcedureFunction<Object>(NoOp.INSTANCE));
57 assertObjectsAreNotEqual(f,Constant.of("x"));
58 assertObjectsAreNotEqual(f,new ProcedureFunction<Object>(new Procedure() { public void run() { } }));
59 assertObjectsAreNotEqual(f,Constant.of(null));
60 }
61
62 @Test
63 public void testAdaptNull() throws Exception {
64 assertNull(FunctionProcedure.adapt(null));
65 }
66
67 @Test
68 public void testAdapt() throws Exception {
69 assertNotNull(ProcedureFunction.adapt(new NoOp()));
70 }
71 }