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.commons.utils.CollectionUtils.*;
20 import static org.junit.jupiter.api.Assertions.*;
21
22 import java.net.*;
23 import java.util.*;
24
25 import org.apache.http.*;
26 import org.apache.juneau.*;
27 import org.apache.juneau.http.*;
28 import org.apache.juneau.http.header.*;
29 import org.junit.jupiter.api.*;
30
31 class SeeOtherRoot_Test extends TestBase {
32
33 @Test void a01_basic() {
34 var x = new SeeOtherRoot();
35 assertNotNull(x);
36 }
37
38 @Test void a02_withContent() {
39 var x = new SeeOtherRoot("test content");
40 assertNotNull(x);
41 }
42
43 @Test void a03_fluentSetters() throws Exception {
44 var x = new SeeOtherRoot();
45
46
47 assertSame(x, x.setContent("test content"));
48
49
50 HttpEntity entity = x.getEntity();
51 assertSame(x, x.setContent(entity));
52
53
54 assertSame(x, x.setHeader2(BasicHeader.of("X-Test", "test-value")));
55
56
57 assertSame(x, x.setHeader2("X-Test2", "test-value2"));
58
59
60 List<Header> headerList = l(BasicHeader.of("X-Header1", "value1"));
61 assertSame(x, x.setHeaders(headerList));
62 assertEquals("value1", x.getFirstHeader("X-Header1").getValue());
63
64
65 var headers = HeaderList.of(BasicHeader.of("X-Header2", "value2"));
66 assertSame(x, x.setHeaders(headers));
67
68
69 assertSame(x, x.setHeaders2(BasicHeader.of("X-Header3", "value3")));
70
71
72 assertSame(x, x.setLocale2(Locale.US));
73
74
75 assertSame(x, x.setLocation("servlet:/newpath"));
76
77
78 assertSame(x, x.setLocation(new URI("http://example.com")));
79
80
81 assertSame(x, x.setProtocolVersion(new ProtocolVersion("HTTP", 1, 1)));
82
83
84 assertSame(x, x.setReasonPhrase2("Custom Reason"));
85
86
87 assertSame(x, x.setReasonPhraseCatalog(null));
88
89
90 assertSame(x, x.setStatusCode2(303));
91
92
93 assertSame(x, x.setStatusLine(BasicStatusLine.create(303, "See Other")));
94
95
96 assertSame(x, x.setUnmodifiable());
97 }
98
99 @Test void a04_fluentChaining() throws Exception {
100
101 var x = new SeeOtherRoot()
102 .setHeaders(l(BasicHeader.of("X-Chain", "chained")))
103 .setContent("Redirect content");
104
105 assertEquals("chained", x.getFirstHeader("X-Chain").getValue());
106 }
107
108 @Test void a05_reusableInstance() {
109
110 assertNotNull(SeeOtherRoot.INSTANCE);
111 }
112
113 @Test void a06_copy() throws Exception {
114
115 var x = new SeeOtherRoot();
116
117 SeeOtherRoot copy = x.copy();
118
119
120 assertNotSame(x, copy);
121
122
123 assertInstanceOf(SeeOtherRoot.class, copy);
124
125
126 assertNotNull(copy.getFirstHeader("Location"));
127 assertTrue(copy.getFirstHeader("Location").getValue().contains("servlet:/"));
128 }
129 }