1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.proxy2.interceptor.matcher.argument;
19
20 import static org.junit.Assert.assertFalse;
21 import static org.junit.Assert.assertTrue;
22
23 import org.apache.commons.proxy2.interceptor.matcher.ArgumentMatcher;
24 import org.junit.Test;
25
26 @SuppressWarnings("boxing")
27 public class ArgumentMatcherUtilsTest
28 {
29 @Test
30 public void testAny() throws Exception
31 {
32 ArgumentMatcher<Object> matcher = ArgumentMatcherUtils.any();
33 assertTrue(matcher.matches(null));
34 assertTrue(matcher.matches("Hello!"));
35 assertTrue(matcher.matches(12345));
36 }
37
38 @Test
39 public void testEq() throws Exception
40 {
41 ArgumentMatcher<String> matcher = ArgumentMatcherUtils.eq("Hello");
42 assertTrue(matcher.matches("Hello"));
43 assertFalse(matcher.matches(null));
44 }
45
46 @Test
47 public void testGt() throws Exception
48 {
49 ArgumentMatcher<Integer> matcher = ArgumentMatcherUtils.gt(5);
50 assertTrue(matcher.matches(6));
51 assertFalse(matcher.matches(5));
52 assertFalse(matcher.matches(1));
53 assertFalse(matcher.matches(null));
54 }
55
56 @Test
57 public void testGte() throws Exception
58 {
59 ArgumentMatcher<Integer> matcher = ArgumentMatcherUtils.gte(5);
60 assertTrue(matcher.matches(6));
61 assertTrue(matcher.matches(5));
62 assertFalse(matcher.matches(1));
63 assertFalse(matcher.matches(null));
64 }
65
66 @Test
67 public void testIsA() throws Exception
68 {
69 ArgumentMatcher<Object> matcher = ArgumentMatcherUtils.isA(String.class);
70 assertFalse(matcher.matches(null));
71 assertTrue(matcher.matches("Hello"));
72 assertFalse(matcher.matches(123));
73 }
74
75 @Test
76 public void testIsNull() throws Exception
77 {
78 ArgumentMatcher<Object> matcher = ArgumentMatcherUtils.isNull();
79 assertTrue(matcher.matches(null));
80 assertFalse(matcher.matches("Hello"));
81 assertFalse(matcher.matches(123));
82 }
83
84 @Test
85 public void testLt() throws Exception
86 {
87 ArgumentMatcher<Integer> matcher = ArgumentMatcherUtils.lt(5);
88 assertTrue(matcher.matches(4));
89 assertFalse(matcher.matches(5));
90 assertFalse(matcher.matches(19));
91 assertFalse(matcher.matches(null));
92 }
93
94 @Test
95 public void testLte() throws Exception
96 {
97 ArgumentMatcher<Integer> matcher = ArgumentMatcherUtils.lte(5);
98 assertTrue(matcher.matches(4));
99 assertTrue(matcher.matches(5));
100 assertFalse(matcher.matches(19));
101 assertFalse(matcher.matches(null));
102 }
103
104 @Test
105 public void testMatches() throws Exception
106 {
107 ArgumentMatcher<String> matcher = ArgumentMatcherUtils.matches("(abc)+");
108 assertTrue(matcher.matches("abc"));
109 assertTrue(matcher.matches("abcabc"));
110 assertFalse(matcher.matches(""));
111 assertFalse(matcher.matches(null));
112 }
113
114 @Test
115 public void testNotNull() throws Exception
116 {
117 ArgumentMatcher<String> matcher = ArgumentMatcherUtils.notNull();
118 assertTrue(matcher.matches("Hello"));
119 assertFalse(matcher.matches(null));
120 }
121
122 @Test
123 public void testStartsWith() throws Exception
124 {
125 ArgumentMatcher<String> matcher = ArgumentMatcherUtils.startsWith("abc");
126 assertTrue(matcher.matches("abc"));
127 assertTrue(matcher.matches("abcd"));
128 assertFalse(matcher.matches("ab"));
129 assertFalse(matcher.matches(null));
130 }
131
132 @Test
133 public void testEndsWith() throws Exception
134 {
135 ArgumentMatcher<String> matcher = ArgumentMatcherUtils.endsWith("abc");
136 assertTrue(matcher.matches("abc"));
137 assertTrue(matcher.matches("dabc"));
138 assertFalse(matcher.matches("ab"));
139 assertFalse(matcher.matches(null));
140 }
141 }