1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.juneau.rest.beans;
18
19 import static org.apache.juneau.junit.bct.BctAssertions.*;
20 import static org.junit.jupiter.api.Assertions.*;
21
22 import org.apache.juneau.*;
23 import org.junit.jupiter.api.*;
24
25 class ChildResourceDescriptions_Test extends TestBase {
26
27 @Test void a01_basic() {
28 var x = new ChildResourceDescriptions();
29 assertNotNull(x);
30 assertEmpty(x);
31 }
32
33 @Test void a02_appendWithDescription() {
34 var x = new ChildResourceDescriptions();
35 x.append("child1", "Description 1");
36 assertSize(1, x);
37 assertEquals("child1", x.get(0).getName());
38 assertEquals("Description 1", x.get(0).getDescription());
39 }
40
41 @Test void a03_appendWithUri() {
42 var x = new ChildResourceDescriptions();
43 x.append("child1", "/api/child1", "Child 1 API");
44 assertSize(1, x);
45 assertEquals("child1", x.get(0).getName());
46 assertEquals("/api/child1", x.get(0).getUri());
47 assertEquals("Child 1 API", x.get(0).getDescription());
48 }
49
50 @Test void a04_fluentSetters() {
51 var x = new ChildResourceDescriptions();
52
53
54 assertSame(x, x.append("resource1", "Resource 1"));
55 assertSize(1, x);
56
57
58 assertSame(x, x.append("resource2", "/api/resource2", "Resource 2 API"));
59 assertSize(2, x);
60 }
61
62 @Test void a05_fluentChaining() {
63
64 var x = new ChildResourceDescriptions()
65 .append("users", "User management")
66 .append("products", "/api/products", "Product catalog")
67 .append("orders", "Order processing");
68
69 assertSize(3, x);
70 assertEquals("users", x.get(0).getName());
71 assertEquals("User management", x.get(0).getDescription());
72 assertEquals("products", x.get(1).getName());
73 assertEquals("/api/products", x.get(1).getUri());
74 assertEquals("Product catalog", x.get(1).getDescription());
75 assertEquals("orders", x.get(2).getName());
76 assertEquals("Order processing", x.get(2).getDescription());
77 }
78
79 @Test void a06_multipleResources() {
80
81 var x = new ChildResourceDescriptions()
82 .append("child1", "First child resource")
83 .append("child2", "/child2", "Second child resource")
84 .append("child3", "Third child resource");
85
86 assertSize(3, x);
87 assertNotNull(x.get(0));
88 assertNotNull(x.get(1));
89 assertNotNull(x.get(2));
90 }
91 }