1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.juneau.objecttools;
18
19 import static org.apache.juneau.common.utils.Utils.*;
20 import static org.junit.jupiter.api.Assertions.*;
21
22 import org.apache.juneau.*;
23 import org.junit.jupiter.api.*;
24
25 class ObjectIntrospector_Test extends TestBase {
26
27
28
29
30 @Test void a01_Basic() throws Exception {
31 var in = n(String.class);
32
33 var r = new ObjectIntrospector(in, null).invokeMethod("substring(int,int)", "[3,6]");
34 assertNull(r);
35
36 in = "foobar";
37 r = new ObjectIntrospector(in).invokeMethod("substring(int,int)", "[3,6]");
38 assertEquals("bar", r);
39
40 r = new ObjectIntrospector(in).invokeMethod("toString", null);
41 assertEquals("foobar", r);
42
43 r = new ObjectIntrospector(in).invokeMethod("toString", "");
44 assertEquals("foobar", r);
45
46 r = new ObjectIntrospector(in).invokeMethod("toString", "[]");
47 assertEquals("foobar", r);
48
49 assertThrows(NoSuchMethodException.class, ()->new ObjectIntrospector("foobar").invokeMethod("noSuchMethod", "[3,6]"));
50
51 r = new ObjectIntrospector(null).invokeMethod(String.class.getMethod("toString"), null);
52 assertNull(r);
53
54 r = new ObjectIntrospector("foobar").invokeMethod(String.class.getMethod("toString"), null);
55 assertEquals("foobar", r);
56 }
57 }