View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *      http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  package org.apache.juneau;
18  
19  import java.lang.reflect.*;
20  
21  import org.junit.jupiter.params.*;
22  import org.junit.jupiter.params.provider.*;
23  
24  /**
25   * Superclass for tests that verify results against all supported content types.
26   */
27  public abstract class ComboRoundTripTest_Base extends TestBase {
28  
29  	/**
30  	 * Creates a ClassMeta for the given types.
31  	 */
32  	protected static final Type getType(Type type, Type...args) {
33  		return BeanContext.DEFAULT_SESSION.getClassMeta(type, args);
34  	}
35  
36  	//-----------------------------------------------------------------------------------------------------------------
37  	// JSON
38  	//-----------------------------------------------------------------------------------------------------------------
39  
40  	@ParameterizedTest
41  	@MethodSource("testers")
42  	public void a11_serializeJson(ComboRoundTrip_Tester<?> t) throws Exception {
43  		t.testSerialize("json");
44  	}
45  
46  	@ParameterizedTest
47  	@MethodSource("testers")
48  	public void a12_parseJson(ComboRoundTrip_Tester<?> t) throws Exception {
49  		t.testParse("json");
50  	}
51  
52  	@ParameterizedTest
53  	@MethodSource("testers")
54  	public void a13_verifyJson(ComboRoundTrip_Tester<?> t) throws Exception {
55  		t.testParseVerify("json");
56  	}
57  
58  	//-----------------------------------------------------------------------------------------------------------------
59  	// JSON - 't' property
60  	//-----------------------------------------------------------------------------------------------------------------
61  
62  	@ParameterizedTest
63  	@MethodSource("testers")
64  	public void a21_serializeJsonT(ComboRoundTrip_Tester<?> t) throws Exception {
65  		t.testSerialize("jsonT");
66  	}
67  
68  	@ParameterizedTest
69  	@MethodSource("testers")
70  	public void a22_parseJsonT(ComboRoundTrip_Tester<?> t) throws Exception {
71  		t.testParse("jsonT");
72  	}
73  
74  	@ParameterizedTest
75  	@MethodSource("testers")
76  	public void a23_verifyJsonT(ComboRoundTrip_Tester<?> t) throws Exception {
77  		t.testParseVerify("jsonT");
78  	}
79  
80  	//-----------------------------------------------------------------------------------------------------------------
81  	// JSON - Readable
82  	//-----------------------------------------------------------------------------------------------------------------
83  
84  	@ParameterizedTest
85  	@MethodSource("testers")
86  	public void a31_serializeJsonR(ComboRoundTrip_Tester<?> t) throws Exception {
87  		t.testSerialize("jsonR");
88  	}
89  
90  	@ParameterizedTest
91  	@MethodSource("testers")
92  	public void a32_parseJsonR(ComboRoundTrip_Tester<?> t) throws Exception {
93  		t.testParse("jsonR");
94  	}
95  
96  	@ParameterizedTest
97  	@MethodSource("testers")
98  	public void a33_verifyJsonR(ComboRoundTrip_Tester<?> t) throws Exception {
99  		t.testParseVerify("jsonR");
100 	}
101 
102 	//-----------------------------------------------------------------------------------------------------------------
103 	// XML
104 	//-----------------------------------------------------------------------------------------------------------------
105 
106 	@ParameterizedTest
107 	@MethodSource("testers")
108 	public void b11_serializeXml(ComboRoundTrip_Tester<?> t) throws Exception {
109 		t.testSerialize("xml");
110 	}
111 
112 	@ParameterizedTest
113 	@MethodSource("testers")
114 	public void b12_parseXml(ComboRoundTrip_Tester<?> t) throws Exception {
115 		t.testParse("xml");
116 	}
117 
118 	@ParameterizedTest
119 	@MethodSource("testers")
120 	public void b13_verifyXml(ComboRoundTrip_Tester<?> t) throws Exception {
121 		t.testParseVerify("xml");
122 	}
123 
124 	//-----------------------------------------------------------------------------------------------------------------
125 	// XML - 't' property
126 	//-----------------------------------------------------------------------------------------------------------------
127 
128 	@ParameterizedTest
129 	@MethodSource("testers")
130 	public void b21_serializeXmlT(ComboRoundTrip_Tester<?> t) throws Exception {
131 		t.testSerialize("xmlT");
132 	}
133 
134 	@ParameterizedTest
135 	@MethodSource("testers")
136 	public void b22_parseXmlT(ComboRoundTrip_Tester<?> t) throws Exception {
137 		t.testParse("xmlT");
138 	}
139 
140 	@ParameterizedTest
141 	@MethodSource("testers")
142 	public void b23_verifyXmlT(ComboRoundTrip_Tester<?> t) throws Exception {
143 		t.testParseVerify("xmlT");
144 	}
145 
146 	//-----------------------------------------------------------------------------------------------------------------
147 	// XML - Readable
148 	//-----------------------------------------------------------------------------------------------------------------
149 
150 	@ParameterizedTest
151 	@MethodSource("testers")
152 	public void b31_serializeXmlR(ComboRoundTrip_Tester<?> t) throws Exception {
153 		t.testSerialize("xmlR");
154 	}
155 
156 	@ParameterizedTest
157 	@MethodSource("testers")
158 	public void b32_parseXmlR(ComboRoundTrip_Tester<?> t) throws Exception {
159 		t.testParse("xmlR");
160 	}
161 
162 	@ParameterizedTest
163 	@MethodSource("testers")
164 	public void b33_verifyXmlR(ComboRoundTrip_Tester<?> t) throws Exception {
165 		t.testParseVerify("xmlR");
166 	}
167 
168 	//-----------------------------------------------------------------------------------------------------------------
169 	// XML - Namespaces
170 	//-----------------------------------------------------------------------------------------------------------------
171 
172 	@ParameterizedTest
173 	@MethodSource("testers")
174 	public void b41_serializeXmlNs(ComboRoundTrip_Tester<?> t) throws Exception {
175 		t.testSerialize("xmlNs");
176 	}
177 
178 	@ParameterizedTest
179 	@MethodSource("testers")
180 	public void b42_parseXmlNs(ComboRoundTrip_Tester<?> t) throws Exception {
181 		t.testParse("xmlNs");
182 	}
183 
184 	@ParameterizedTest
185 	@MethodSource("testers")
186 	public void b43_verifyXmlNs(ComboRoundTrip_Tester<?> t) throws Exception {
187 		t.testParseVerify("xmlNs");
188 	}
189 
190 	//-----------------------------------------------------------------------------------------------------------------
191 	// HTML
192 	//-----------------------------------------------------------------------------------------------------------------
193 
194 	@ParameterizedTest
195 	@MethodSource("testers")
196 	public void c11_serializeHtml(ComboRoundTrip_Tester<?> t) throws Exception {
197 		t.testSerialize("html");
198 	}
199 
200 	@ParameterizedTest
201 	@MethodSource("testers")
202 	public void c12_parseHtml(ComboRoundTrip_Tester<?> t) throws Exception {
203 		t.testParse("html");
204 	}
205 
206 	@ParameterizedTest
207 	@MethodSource("testers")
208 	public void c13_verifyHtml(ComboRoundTrip_Tester<?> t) throws Exception {
209 		t.testParseVerify("html");
210 	}
211 
212 	//-----------------------------------------------------------------------------------------------------------------
213 	// HTML - 't' property
214 	//-----------------------------------------------------------------------------------------------------------------
215 
216 	@ParameterizedTest
217 	@MethodSource("testers")
218 	public void c21_serializeHtmlT(ComboRoundTrip_Tester<?> t) throws Exception {
219 		t.testSerialize("htmlT");
220 	}
221 
222 	@ParameterizedTest
223 	@MethodSource("testers")
224 	public void c22_parseHtmlT(ComboRoundTrip_Tester<?> t) throws Exception {
225 		t.testParse("htmlT");
226 	}
227 
228 	@ParameterizedTest
229 	@MethodSource("testers")
230 	public void c23_verifyHtmlT(ComboRoundTrip_Tester<?> t) throws Exception {
231 		t.testParseVerify("htmlT");
232 	}
233 
234 	//-----------------------------------------------------------------------------------------------------------------
235 	// HTML - Readable
236 	//-----------------------------------------------------------------------------------------------------------------
237 
238 	@ParameterizedTest
239 	@MethodSource("testers")
240 	public void c31_serializeHtmlR(ComboRoundTrip_Tester<?> t) throws Exception {
241 		t.testSerialize("htmlR");
242 	}
243 
244 	@ParameterizedTest
245 	@MethodSource("testers")
246 	public void c32_parseHtmlR(ComboRoundTrip_Tester<?> t) throws Exception {
247 		t.testParse("htmlR");
248 	}
249 
250 	@ParameterizedTest
251 	@MethodSource("testers")
252 	public void c33_verifyHtmlR(ComboRoundTrip_Tester<?> t) throws Exception {
253 		t.testParseVerify("htmlR");
254 	}
255 
256 	//-----------------------------------------------------------------------------------------------------------------
257 	// UON
258 	//-----------------------------------------------------------------------------------------------------------------
259 
260 	@ParameterizedTest
261 	@MethodSource("testers")
262 	public void d11_serializeUon(ComboRoundTrip_Tester<?> t) throws Exception {
263 		t.testSerialize("uon");
264 	}
265 
266 	@ParameterizedTest
267 	@MethodSource("testers")
268 	public void d12_parseUon(ComboRoundTrip_Tester<?> t) throws Exception {
269 		t.testParse("uon");
270 	}
271 
272 	@ParameterizedTest
273 	@MethodSource("testers")
274 	public void d13_verifyUon(ComboRoundTrip_Tester<?> t) throws Exception {
275 		t.testParseVerify("uon");
276 	}
277 
278 	//-----------------------------------------------------------------------------------------------------------------
279 	// UON - 't' property
280 	//-----------------------------------------------------------------------------------------------------------------
281 
282 	@ParameterizedTest
283 	@MethodSource("testers")
284 	public void d21_serializeUonT(ComboRoundTrip_Tester<?> t) throws Exception {
285 		t.testSerialize("uonT");
286 	}
287 
288 	@ParameterizedTest
289 	@MethodSource("testers")
290 	public void d22_parseUonT(ComboRoundTrip_Tester<?> t) throws Exception {
291 		t.testParse("uonT");
292 	}
293 
294 	@ParameterizedTest
295 	@MethodSource("testers")
296 	public void d23_verifyUonT(ComboRoundTrip_Tester<?> t) throws Exception {
297 		t.testParseVerify("uonT");
298 	}
299 
300 	//-----------------------------------------------------------------------------------------------------------------
301 	// UON - Readable
302 	//-----------------------------------------------------------------------------------------------------------------
303 
304 	@ParameterizedTest
305 	@MethodSource("testers")
306 	public void d31_serializeUonR(ComboRoundTrip_Tester<?> t) throws Exception {
307 		t.testSerialize("uonR");
308 	}
309 
310 	@ParameterizedTest
311 	@MethodSource("testers")
312 	public void d32_parseUonR(ComboRoundTrip_Tester<?> t) throws Exception {
313 		t.testParse("uonR");
314 	}
315 
316 	@ParameterizedTest
317 	@MethodSource("testers")
318 	public void d33_verifyUonR(ComboRoundTrip_Tester<?> t) throws Exception {
319 		t.testParseVerify("uonR");
320 	}
321 
322 	//-----------------------------------------------------------------------------------------------------------------
323 	// UrlEncoding
324 	//-----------------------------------------------------------------------------------------------------------------
325 
326 	@ParameterizedTest
327 	@MethodSource("testers")
328 	public void e11_serializeUrlEncoding(ComboRoundTrip_Tester<?> t) throws Exception {
329 		t.testSerialize("urlEnc");
330 	}
331 
332 	@ParameterizedTest
333 	@MethodSource("testers")
334 	public void e12_parseUrlEncoding(ComboRoundTrip_Tester<?> t) throws Exception {
335 		t.testParse("urlEnc");
336 	}
337 
338 	@ParameterizedTest
339 	@MethodSource("testers")
340 	public void e13_verifyUrlEncoding(ComboRoundTrip_Tester<?> t) throws Exception {
341 		t.testParseVerify("urlEnc");
342 	}
343 
344 	//-----------------------------------------------------------------------------------------------------------------
345 	// UrlEncoding - 't' property
346 	//-----------------------------------------------------------------------------------------------------------------
347 
348 	@ParameterizedTest
349 	@MethodSource("testers")
350 	public void e21_serializeUrlEncodingT(ComboRoundTrip_Tester<?> t) throws Exception {
351 		t.testSerialize("urlEncT");
352 	}
353 
354 	@ParameterizedTest
355 	@MethodSource("testers")
356 	public void e22_parseUrlEncodingT(ComboRoundTrip_Tester<?> t) throws Exception {
357 		t.testParse("urlEncT");
358 	}
359 
360 	@ParameterizedTest
361 	@MethodSource("testers")
362 	public void e23_verifyUrlEncodingT(ComboRoundTrip_Tester<?> t) throws Exception {
363 		t.testParseVerify("urlEncT");
364 	}
365 
366 	//-----------------------------------------------------------------------------------------------------------------
367 	// UrlEncoding - Readable
368 	//-----------------------------------------------------------------------------------------------------------------
369 
370 	@ParameterizedTest
371 	@MethodSource("testers")
372 	public void e31_serializeUrlEncodingR(ComboRoundTrip_Tester<?> t) throws Exception {
373 		t.testSerialize("urlEncR");
374 	}
375 
376 	@ParameterizedTest
377 	@MethodSource("testers")
378 	public void e32_parseUrlEncodingR(ComboRoundTrip_Tester<?> t) throws Exception {
379 		t.testParse("urlEncR");
380 	}
381 
382 	@ParameterizedTest
383 	@MethodSource("testers")
384 	public void e33_verifyUrlEncodingR(ComboRoundTrip_Tester<?> t) throws Exception {
385 		t.testParseVerify("urlEncR");
386 	}
387 
388 	//-----------------------------------------------------------------------------------------------------------------
389 	// MsgPack
390 	//-----------------------------------------------------------------------------------------------------------------
391 
392 	@ParameterizedTest
393 	@MethodSource("testers")
394 	public void f11_serializeMsgPack(ComboRoundTrip_Tester<?> t) throws Exception {
395 		t.testSerialize("msgPack");
396 	}
397 
398 	@ParameterizedTest
399 	@MethodSource("testers")
400 	public void f12_parseMsgPack(ComboRoundTrip_Tester<?> t) throws Exception {
401 		t.testParse("msgPack");
402 	}
403 
404 	@ParameterizedTest
405 	@MethodSource("testers")
406 	public void f13_parseMsgPackJsonEquivalency(ComboRoundTrip_Tester<?> t) throws Exception {
407 		t.testParseJsonEquivalency("msgPack");
408 	}
409 
410 	@ParameterizedTest
411 	@MethodSource("testers")
412 	public void f14_verifyMsgPack(ComboRoundTrip_Tester<?> t) throws Exception {
413 		t.testParseVerify("msgPack");
414 	}
415 
416 	//-----------------------------------------------------------------------------------------------------------------
417 	// MsgPack - 't' property
418 	//-----------------------------------------------------------------------------------------------------------------
419 
420 	@ParameterizedTest
421 	@MethodSource("testers")
422 	public void f21_serializeMsgPackT(ComboRoundTrip_Tester<?> t) throws Exception {
423 		t.testSerialize("msgPackT");
424 	}
425 
426 	@ParameterizedTest
427 	@MethodSource("testers")
428 	public void f22_parseMsgPackT(ComboRoundTrip_Tester<?> t) throws Exception {
429 		t.testParse("msgPackT");
430 	}
431 
432 	@ParameterizedTest
433 	@MethodSource("testers")
434 	public void f23_parseMsgPackTJsonEquivalency(ComboRoundTrip_Tester<?> t) throws Exception {
435 		t.testParseJsonEquivalency("msgPackT");
436 	}
437 
438 	@ParameterizedTest
439 	@MethodSource("testers")
440 	public void f24_verifyMsgPackT(ComboRoundTrip_Tester<?> t) throws Exception {
441 		t.testParseVerify("msgPackT");
442 	}
443 }