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.TestUtils.*;
20 import static org.junit.jupiter.api.Assertions.*;
21
22 import org.apache.juneau.*;
23 import org.junit.jupiter.api.*;
24
25
26
27
28 class ObjectPaginator_Test extends TestBase {
29
30 ObjectPaginator op = ObjectPaginator.create();
31 BeanSession bs = BeanContext.DEFAULT_SESSION;
32
33
34
35
36
37 @Test void a01_nullInput() {
38 assertNull(op.run(bs, null, null));
39 }
40
41 @Test void a02_nonCollectionInput() {
42 assertEquals("foo", op.run(bs, "foo", PageArgs.create(1, 3)));
43 }
44
45
46
47
48
49 @Test void b01_arrays_basic() {
50 var in = new int[]{1,2,3};
51 assertList(op.run(in, 0, 3), 1,2,3);
52 assertList(op.run(in, 1, 3), 2,3);
53 assertList(op.run(in, 1, 1), 2);
54 assertList(op.run(in, 4, 1));
55 assertList(op.run(in, 0, 0));
56
57 var in2 = a("1","2","3");
58 assertList(op.run(in2, 1, 1), "2");
59
60 var in3 = new boolean[]{false,true,false};
61 assertList(op.run(in3, 1, 1), true);
62
63 var in4 = new byte[]{1,2,3};
64 assertList(op.run(in4, 1, 1), (byte)2);
65
66 var in5 = new char[]{'1','2','3'};
67 assertList(op.run(in5, 1, 1), '2');
68
69 var in6 = new double[]{1,2,3};
70 assertList(op.run(in6, 1, 1), (double)2);
71
72 var in7 = new float[]{1,2,3};
73 assertList(op.run(in7, 1, 1), (float)2);
74
75 var in8 = new long[]{1,2,3};
76 assertList(op.run(in8, 1, 1), (long)2);
77
78 var in9 = new short[]{1,2,3};
79 assertList(op.run(in9, 1, 1), (short)2);
80 }
81
82
83
84
85
86 @Test void c01_collections_basic() {
87 var in = list(1,2,3);
88 assertList(op.run(in, 0, 3), 1,2,3);
89 assertList(op.run(in, 1, 3), 2,3);
90 assertList(op.run(in, 1, 1), 2);
91 assertList(op.run(in, 4, 1));
92 assertList(op.run(in, 0, 0));
93
94 var in2 = set(1,2,3);
95 assertList(op.run(in2, 0, 3), 1,2,3);
96 assertList(op.run(in2, 1, 3), 2,3);
97 assertList(op.run(in2, 1, 1), 2);
98 assertList(op.run(in2, 4, 1));
99 assertList(op.run(in2, 0, 0));
100 }
101 }