1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.configuration2.beanutils;
18
19 import static org.junit.jupiter.api.Assertions.assertFalse;
20 import static org.junit.jupiter.api.Assertions.assertThrows;
21 import static org.junit.jupiter.api.Assertions.assertTrue;
22 import static org.mockito.Mockito.mock;
23
24 import org.junit.jupiter.api.Test;
25
26
27
28
29 public class TestConstructorArg {
30
31
32
33 @Test
34 public void testForBeanDeclarationNull() {
35 assertThrows(NullPointerException.class, () -> ConstructorArg.forBeanDeclaration(null));
36 }
37
38
39
40
41 @Test
42 public void testIsNestedBeanDeclarationFalse() {
43 final ConstructorArg arg = ConstructorArg.forValue("test");
44 assertFalse(arg.isNestedBeanDeclaration());
45 }
46
47
48
49
50 @Test
51 public void testIsNestedBeanDeclarationTrue() {
52 final BeanDeclaration decl = mock(BeanDeclaration.class);
53 final ConstructorArg arg = ConstructorArg.forBeanDeclaration(decl);
54 assertTrue(arg.isNestedBeanDeclaration());
55 }
56
57
58
59
60 @Test
61 public void testMatchesNoType() {
62 final ConstructorArg arg = ConstructorArg.forValue(42);
63 assertTrue(arg.matches(String.class));
64 assertTrue(arg.matches(getClass()));
65 }
66
67
68
69
70 @Test
71 public void testMatchesNull() {
72 final ConstructorArg arg = ConstructorArg.forValue(0);
73 assertFalse(arg.matches(null));
74 }
75
76
77
78
79 @Test
80 public void testMatchesWithType() {
81 final ConstructorArg arg = ConstructorArg.forValue("42", int.class.getName());
82 assertTrue(arg.matches(Integer.TYPE));
83 assertFalse(arg.matches(Integer.class));
84 assertFalse(arg.matches(String.class));
85 }
86 }