This is an automated email from the ASF dual-hosted git repository.
jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git
The following commit(s) were added to refs/heads/master by this push:
new 10e0ca0f3 Test modernization
10e0ca0f3 is described below
commit 10e0ca0f3e8f2b87a6e27f27fdd58c5a4405b044
Author: James Bognar <[email protected]>
AuthorDate: Wed Aug 27 14:24:41 2025 -0400
Test modernization
---
.../org/apache/juneau/common/internal/Utils.java | 19 +++
.../test/java/org/apache/juneau/BeanMap_Test.java | 26 +---
.../src/test/java/org/apache/juneau/TestUtils.java | 8 +-
.../httppart/HttpPartSchema_Header_Test.java | 159 +++++----------------
.../rest/annotation/Swagger_FormData_Test.java | 26 +---
.../juneau/rest/mock2/MockServletRequest_Test.java | 86 +++++------
6 files changed, 109 insertions(+), 215 deletions(-)
diff --git
a/juneau-core/juneau-common/src/main/java/org/apache/juneau/common/internal/Utils.java
b/juneau-core/juneau-common/src/main/java/org/apache/juneau/common/internal/Utils.java
index 94db380d2..70374e1ad 100644
---
a/juneau-core/juneau-common/src/main/java/org/apache/juneau/common/internal/Utils.java
+++
b/juneau-core/juneau-common/src/main/java/org/apache/juneau/common/internal/Utils.java
@@ -830,6 +830,12 @@ public class Utils {
return
o2.entrySet().stream().map(Utils::r).collect(joining(",","{","}"));
if (o instanceof Map.Entry<?,?> o2)
return r(o2.getKey()) + '=' + r(o2.getValue());
+ if (o instanceof Iterable<?> o2)
+ return r(toList(o2));
+ if (o instanceof Iterator<?> o2)
+ return r(toList(o2));
+ if (o instanceof Enumeration<?> o2)
+ return r(toList(o2));
if (o instanceof GregorianCalendar o2)
return
o2.toZonedDateTime().format(DateTimeFormatter.ISO_INSTANT);
if (o instanceof Date o2)
@@ -1500,4 +1506,17 @@ public class Utils {
throw ThrowableUtils.asRuntimeException(t);
}
}
+
+ public static final <T> List<T> toList(Iterable<T> value) {
+ return StreamSupport.stream(value.spliterator(),
false).toList();
+ }
+
+ public static final <T> List<T> toList(Iterator<T> value) {
+ Iterable<T> v2 = () -> value;
+ return StreamSupport.stream(v2.spliterator(), false).toList();
+ }
+
+ public static final <T> List<T> toList(Enumeration<T> value) {
+ return Collections.list(value);
+ }
}
\ No newline at end of file
diff --git a/juneau-utest/src/test/java/org/apache/juneau/BeanMap_Test.java
b/juneau-utest/src/test/java/org/apache/juneau/BeanMap_Test.java
index a73724b2c..6f8b58d54 100755
--- a/juneau-utest/src/test/java/org/apache/juneau/BeanMap_Test.java
+++ b/juneau-utest/src/test/java/org/apache/juneau/BeanMap_Test.java
@@ -986,19 +986,12 @@ class BeanMap_Test extends SimpleTestBase {
//====================================================================================================
@Test void a18_propertyNameFactoryDashedLC1() {
var m =
bc.newBeanMap(P1.class).load("{'foo':1,'bar-baz':2,'bing-boo-url':3}");
- assertEquals(1, m.get("foo"));
- assertEquals(2, m.get("bar-baz"));
- assertEquals(3, m.get("bing-boo-url"));
- var b = m.getBean();
- assertEquals(1, b.foo);
- assertEquals(2, b.barBaz);
- assertEquals(3, b.bingBooURL);
+ assertMap(m, "foo,bar-baz,bing-boo-url", "1,2,3");
+ assertBean(m.getBean(), "foo,barBaz,bingBooURL", "1,2,3");
m.put("foo", 4);
m.put("bar-baz", 5);
m.put("bing-boo-url", 6);
- assertEquals(4, b.foo);
- assertEquals(5, b.barBaz);
- assertEquals(6, b.bingBooURL);
+ assertBean(m.getBean(), "foo,barBaz,bingBooURL", "4,5,6");
}
@Bean(propertyNamer=PropertyNamerDLC.class)
@@ -1008,19 +1001,12 @@ class BeanMap_Test extends SimpleTestBase {
@Test void a19_propertyNameFactoryDashedLC1_usingConfig() {
var m =
bc.copy().applyAnnotations(P1cConfig.class).build().newBeanMap(P1c.class).load("{'foo':1,'bar-baz':2,'bing-boo-url':3}");
- assertEquals(1, m.get("foo"));
- assertEquals(2, m.get("bar-baz"));
- assertEquals(3, m.get("bing-boo-url"));
- var b = m.getBean();
- assertEquals(1, b.foo);
- assertEquals(2, b.barBaz);
- assertEquals(3, b.bingBooURL);
+ assertMap(m, "foo,bar-baz,bing-boo-url", "1,2,3");
+ assertBean(m.getBean(), "foo,barBaz,bingBooURL", "1,2,3");
m.put("foo", 4);
m.put("bar-baz", 5);
m.put("bing-boo-url", 6);
- assertEquals(4, b.foo);
- assertEquals(5, b.barBaz);
- assertEquals(6, b.bingBooURL);
+ assertBean(m.getBean(), "foo,barBaz,bingBooURL", "4,5,6");
}
@Bean(on="Dummy1", propertyNamer=PropertyNamerDLC.class)
diff --git a/juneau-utest/src/test/java/org/apache/juneau/TestUtils.java
b/juneau-utest/src/test/java/org/apache/juneau/TestUtils.java
index 365d5082c..d61941b3e 100644
--- a/juneau-utest/src/test/java/org/apache/juneau/TestUtils.java
+++ b/juneau-utest/src/test/java/org/apache/juneau/TestUtils.java
@@ -335,10 +335,14 @@ public class TestUtils extends Utils2 {
return spn.stream().map(x -> getReadableEntry(e,
x)).collect(joining(","));
}
+ @SuppressWarnings("unchecked")
private static Object getEntry(Object o, String name) {
- if (o instanceof List) return
List.class.cast(o).get(Integer.parseInt(name));
+ if (o instanceof List o2) return o2.get(Integer.parseInt(name));
if (o.getClass().isArray()) return Array.get(o,
Integer.parseInt(name));
- if (o instanceof Map) return Map.class.cast(o).get(name);
+ if (o instanceof Map o2) return o2.get(name);
+ if (o instanceof Iterable o2) return
toList(o2).get(Integer.parseInt(name));
+ if (o instanceof Iterator o2) return
toList(o2).get(Integer.parseInt(name));
+ if (o instanceof Enumeration o2) return
toList(o2).get(Integer.parseInt(name));
return TestUtils.getBeanProp(o, name);
}
diff --git
a/juneau-utest/src/test/java/org/apache/juneau/httppart/HttpPartSchema_Header_Test.java
b/juneau-utest/src/test/java/org/apache/juneau/httppart/HttpPartSchema_Header_Test.java
index c81e2408f..cc763e601 100644
---
a/juneau-utest/src/test/java/org/apache/juneau/httppart/HttpPartSchema_Header_Test.java
+++
b/juneau-utest/src/test/java/org/apache/juneau/httppart/HttpPartSchema_Header_Test.java
@@ -70,26 +70,11 @@ class HttpPartSchema_Header_Test extends SimpleTestBase {
public static class A02 {}
@Test void a02_basic_onClass() {
- var s = HttpPartSchema.create().applyAll(Header.class,
A02.class).noValidate().build();
- assertEquals("x", s.getName());
- assertEquals(HttpPartDataType.NUMBER, s.getType());
- assertEquals(HttpPartFormat.INT32, s.getFormat());
- assertEquals(HttpPartCollectionFormat.CSV,
s.getCollectionFormat());
- assertEquals(1, s.getMaximum());
- assertEquals(2, s.getMinimum());
- assertEquals(3, s.getMultipleOf());
- assertEquals("4", s.getPattern().pattern());
- assertEquals(1, s.getMaxLength().longValue());
- assertEquals(2, s.getMinLength().longValue());
- assertEquals(3, s.getMaxItems().longValue());
- assertEquals(4, s.getMinItems().longValue());
- assertTrue(s.isExclusiveMaximum());
- assertTrue(s.isExclusiveMinimum());
- assertTrue(s.isUniqueItems());
- assertTrue(s.isRequired());
- assertTrue(s.isSkipIfEmpty());
- assertJson(s.getEnum(), "['e1','e2','e3']");
- assertEquals("c1\nc2", s.getDefault());
+ assertBean(
+ HttpPartSchema.create().applyAll(Header.class,
A02.class).noValidate().build(),
+
"name,type,format,collectionFormat,maximum,minimum,multipleOf,pattern,maxLength,minLength,maxItems,minItems,exclusiveMaximum,exclusiveMinimum,uniqueItems,required,skipIfEmpty,enum,default",
+
"x,number,int32,csv,1,2,3,4,1,2,3,4,true,true,true,true,true,[e1,e2,e3],c1\nc2"
+ );
}
public static class A03 {
@@ -125,26 +110,11 @@ class HttpPartSchema_Header_Test extends SimpleTestBase {
@Test void a03_basic_onParameter() throws Exception {
var mpi = MethodInfo.of(A03.class.getMethod("a",
String.class)).getParam(0);
- var s = HttpPartSchema.create().applyAll(Header.class,
mpi).noValidate().build();
- assertEquals("x", s.getName());
- assertEquals(HttpPartDataType.NUMBER, s.getType());
- assertEquals(HttpPartFormat.INT32, s.getFormat());
- assertEquals(HttpPartCollectionFormat.CSV,
s.getCollectionFormat());
- assertEquals(1, s.getMaximum());
- assertEquals(2, s.getMinimum());
- assertEquals(3, s.getMultipleOf());
- assertEquals("4", s.getPattern().pattern());
- assertEquals(1, s.getMaxLength().longValue());
- assertEquals(2, s.getMinLength().longValue());
- assertEquals(3, s.getMaxItems().longValue());
- assertEquals(4, s.getMinItems().longValue());
- assertTrue(s.isExclusiveMaximum());
- assertTrue(s.isExclusiveMinimum());
- assertTrue(s.isUniqueItems());
- assertTrue(s.isRequired());
- assertTrue(s.isSkipIfEmpty());
- assertJson(s.getEnum(), "['e1','e2','e3']");
- assertEquals("c1\nc2", s.getDefault());
+ assertBean(
+ HttpPartSchema.create().applyAll(Header.class,
mpi).noValidate().build(),
+
"name,type,format,collectionFormat,maximum,minimum,multipleOf,pattern,maxLength,minLength,maxItems,minItems,exclusiveMaximum,exclusiveMinimum,uniqueItems,required,skipIfEmpty,enum,default",
+
"x,number,int32,csv,1,2,3,4,1,2,3,4,true,true,true,true,true,[e1,e2,e3],c1\nc2"
+ );
}
public static class A04 {
@@ -180,26 +150,11 @@ class HttpPartSchema_Header_Test extends SimpleTestBase {
@Test void a04_basic_onParameterAndClass() throws Exception {
var mpi = MethodInfo.of(A04.class.getMethod("a",
A01.class)).getParam(0);
- var s = HttpPartSchema.create().applyAll(Header.class,
mpi).noValidate().build();
- assertEquals("y", s.getName());
- assertEquals(HttpPartDataType.INTEGER, s.getType());
- assertEquals(HttpPartFormat.INT64, s.getFormat());
- assertEquals(HttpPartCollectionFormat.SSV,
s.getCollectionFormat());
- assertEquals(5, s.getMaximum());
- assertEquals(6, s.getMinimum());
- assertEquals(7, s.getMultipleOf());
- assertEquals("8", s.getPattern().pattern());
- assertEquals(5, s.getMaxLength().longValue());
- assertEquals(6, s.getMinLength().longValue());
- assertEquals(7, s.getMaxItems().longValue());
- assertEquals(8, s.getMinItems().longValue());
- assertFalse(s.isExclusiveMaximum());
- assertFalse(s.isExclusiveMinimum());
- assertFalse(s.isUniqueItems());
- assertFalse(s.isRequired());
- assertFalse(s.isSkipIfEmpty());
- assertJson(s.getEnum(), "['e4','e5','e6']");
- assertEquals("c3\nc4", s.getDefault());
+ assertBean(
+ HttpPartSchema.create().applyAll(Header.class,
mpi).noValidate().build(),
+
"name,type,format,collectionFormat,maximum,minimum,multipleOf,pattern,maxLength,minLength,maxItems,minItems,exclusiveMaximum,exclusiveMinimum,uniqueItems,required,skipIfEmpty,enum,default",
+
"y,integer,int64,ssv,5,6,7,8,5,6,7,8,false,false,false,false,false,[e4,e5,e6],c3\nc4"
+ );
}
@Header("x")
@@ -284,76 +239,32 @@ class HttpPartSchema_Header_Test extends SimpleTestBase {
assertEquals("x", s.getName());
var items = s.getItems();
- assertEquals(HttpPartDataType.NUMBER, items.getType());
- assertEquals(HttpPartFormat.INT32, items.getFormat());
- assertEquals(HttpPartCollectionFormat.CSV,
items.getCollectionFormat());
- assertEquals(1, items.getMaximum());
- assertEquals(2, items.getMinimum());
- assertEquals(3, items.getMultipleOf());
- assertEquals("4", items.getPattern().pattern());
- assertEquals(1, items.getMaxLength().longValue());
- assertEquals(2, items.getMinLength().longValue());
- assertEquals(3, items.getMaxItems().longValue());
- assertEquals(4, items.getMinItems().longValue());
- assertTrue(items.isExclusiveMaximum());
- assertTrue(items.isExclusiveMinimum());
- assertTrue(items.isUniqueItems());
- assertJson(items.getEnum(), "['e1','e2']");
- assertEquals("c1\nc2", items.getDefault());
+ assertBean(
+ items,
+
"type,format,collectionFormat,maximum,minimum,multipleOf,pattern,maxLength,minLength,maxItems,minItems,exclusiveMaximum,exclusiveMinimum,uniqueItems,enum,default",
+
"number,int32,csv,1,2,3,4,1,2,3,4,true,true,true,[e1,e2],c1\nc2"
+ );
items = items.getItems();
- assertEquals(HttpPartDataType.INTEGER, items.getType());
- assertEquals(HttpPartFormat.INT64, items.getFormat());
- assertEquals(HttpPartCollectionFormat.SSV,
items.getCollectionFormat());
- assertEquals(5, items.getMaximum());
- assertEquals(6, items.getMinimum());
- assertEquals(7, items.getMultipleOf());
- assertEquals("8", items.getPattern().pattern());
- assertEquals(5, items.getMaxLength().longValue());
- assertEquals(6, items.getMinLength().longValue());
- assertEquals(7, items.getMaxItems().longValue());
- assertEquals(8, items.getMinItems().longValue());
- assertFalse(items.isExclusiveMaximum());
- assertFalse(items.isExclusiveMinimum());
- assertFalse(items.isUniqueItems());
- assertJson(items.getEnum(), "['e3','e4']");
- assertEquals("c3\nc4", items.getDefault());
+ assertBean(
+ items,
+
"type,format,collectionFormat,maximum,minimum,multipleOf,pattern,maxLength,minLength,maxItems,minItems,exclusiveMaximum,exclusiveMinimum,uniqueItems,enum,default",
+
"integer,int64,ssv,5,6,7,8,5,6,7,8,false,false,false,[e3,e4],c3\nc4"
+ );
items = items.getItems();
- assertEquals(HttpPartDataType.STRING, items.getType());
- assertEquals(HttpPartFormat.FLOAT, items.getFormat());
- assertEquals(HttpPartCollectionFormat.TSV,
items.getCollectionFormat());
- assertEquals(9, items.getMaximum());
- assertEquals(10, items.getMinimum());
- assertEquals(11, items.getMultipleOf());
- assertEquals("12", items.getPattern().pattern());
- assertEquals(9, items.getMaxLength().longValue());
- assertEquals(10, items.getMinLength().longValue());
- assertEquals(11, items.getMaxItems().longValue());
- assertEquals(12, items.getMinItems().longValue());
- assertTrue(items.isExclusiveMaximum());
- assertTrue(items.isExclusiveMinimum());
- assertTrue(items.isUniqueItems());
- assertJson(items.getEnum(), "['e5','e6']");
- assertEquals("c5\nc6", items.getDefault());
+ assertBean(
+ items,
+
"type,format,collectionFormat,maximum,minimum,multipleOf,pattern,maxLength,minLength,maxItems,minItems,exclusiveMaximum,exclusiveMinimum,uniqueItems,enum,default",
+
"string,float,tsv,9,10,11,12,9,10,11,12,true,true,true,[e5,e6],c5\nc6"
+ );
items = items.getItems();
- assertEquals(HttpPartDataType.ARRAY, items.getType());
- assertEquals(HttpPartFormat.DOUBLE, items.getFormat());
- assertEquals(HttpPartCollectionFormat.PIPES,
items.getCollectionFormat());
- assertEquals(13, items.getMaximum());
- assertEquals(14, items.getMinimum());
- assertEquals(15, items.getMultipleOf());
- assertEquals("16", items.getPattern().pattern());
- assertEquals(13, items.getMaxLength().longValue());
- assertEquals(14, items.getMinLength().longValue());
- assertEquals(15, items.getMaxItems().longValue());
- assertEquals(16, items.getMinItems().longValue());
- assertFalse(items.isExclusiveMaximum());
- assertFalse(items.isExclusiveMinimum());
- assertFalse(items.isUniqueItems());
- assertJson(items.getEnum(), "['e7','e8']");
- assertEquals("c7\nc8", items.getDefault());
+ assertBean(
+ items,
+
"type,format,collectionFormat,maximum,minimum,multipleOf,pattern,maxLength,minLength,maxItems,minItems,exclusiveMaximum,exclusiveMinimum,uniqueItems,enum,default",
+
"array,double,pipes,13,14,15,16,13,14,15,16,false,false,false,[e7,e8],c7\nc8"
+ );
}
//-----------------------------------------------------------------------------------------------------------------
diff --git
a/juneau-utest/src/test/java/org/apache/juneau/rest/annotation/Swagger_FormData_Test.java
b/juneau-utest/src/test/java/org/apache/juneau/rest/annotation/Swagger_FormData_Test.java
index cb7faee62..8f0b43435 100644
---
a/juneau-utest/src/test/java/org/apache/juneau/rest/annotation/Swagger_FormData_Test.java
+++
b/juneau-utest/src/test/java/org/apache/juneau/rest/annotation/Swagger_FormData_Test.java
@@ -71,20 +71,13 @@ class Swagger_FormData_Test extends SimpleTestBase {
@Test void a01_fromPojo() {
var s = getSwagger(A.class);
var x = s.getParameterInfo("/a","get","formData","F");
-
- assertEquals("F", x.getName());
- assertEquals("a\nb", x.getDescription());
- assertEquals("string", x.getType());
+ assertBean(x, "name,description,type", "F,a\nb,string");
x = s.getParameterInfo("/b","put","formData","F");
- assertEquals("F", x.getName());
- assertEquals("a\nb", x.getDescription());
- assertEquals("string", x.getType());
+ assertBean(x, "name,description,type", "F,a\nb,string");
x = s.getParameterInfo("/c","post","formData","F");
- assertEquals("F", x.getName());
- assertEquals("b\nc", x.getDescription());
- assertEquals("string", x.getType());
+ assertBean(x, "name,description,type", "F,b\nc,string");
x = s.getParameterInfo("/d","delete","formData","F");
assertEquals("F", x.getName());
@@ -168,20 +161,13 @@ class Swagger_FormData_Test extends SimpleTestBase {
@Test void d01_fromParameter() {
var s = getSwagger(D.class);
var x = s.getParameterInfo("/a","get","formData","F");
-
- assertEquals("F", x.getName());
- assertEquals("a\nb", x.getDescription());
- assertEquals("string", x.getType());
+ assertBean(x, "name,description,type", "F,a\nb,string");
x = s.getParameterInfo("/b","put","formData","F");
- assertEquals("F", x.getName());
- assertEquals("a\nb", x.getDescription());
- assertEquals("string", x.getType());
+ assertBean(x, "name,description,type", "F,a\nb,string");
x = s.getParameterInfo("/c","post","formData","F");
- assertEquals("F", x.getName());
- assertEquals("b\nc", x.getDescription());
- assertEquals("string", x.getType());
+ assertBean(x, "name,description,type", "F,b\nc,string");
x = s.getParameterInfo("/d","delete","formData","F");
assertEquals("F", x.getName());
diff --git
a/juneau-utest/src/test/java/org/apache/juneau/rest/mock2/MockServletRequest_Test.java
b/juneau-utest/src/test/java/org/apache/juneau/rest/mock2/MockServletRequest_Test.java
index 4ce21b964..16dd0c784 100644
---
a/juneau-utest/src/test/java/org/apache/juneau/rest/mock2/MockServletRequest_Test.java
+++
b/juneau-utest/src/test/java/org/apache/juneau/rest/mock2/MockServletRequest_Test.java
@@ -27,62 +27,46 @@ class MockServletRequest_Test extends SimpleTestBase {
@Test void a01_uris_basic() {
var req = MockServletRequest.create("GET", "/foo");
-
- assertEquals("", req.getContextPath());
- assertEquals("/foo", req.getPathInfo());
- assertEquals("/mock-path/foo", req.getPathTranslated());
- assertEquals(null, req.getQueryString());
- assertEquals("/foo", req.getRequestURI());
- assertEquals("/foo", req.getRequestURL().toString());
- assertEquals("", req.getServletPath());
+ assertBean(
+ req,
+
"contextPath,pathInfo,pathTranslated,queryString,requestURI,requestURL,servletPath",
+ ",/foo,/mock-path/foo,null,/foo,/foo,"
+ );
}
@Test void a02_uris_full() {
var req = MockServletRequest.create("GET",
"http://localhost:8080/foo?bar=baz#quz");
-
- assertEquals("", req.getContextPath());
- assertEquals("/foo", req.getPathInfo());
- assertEquals("/mock-path/foo", req.getPathTranslated());
- assertEquals("bar=baz", req.getQueryString());
- assertEquals("/foo", req.getRequestURI());
- assertEquals("http://localhost:8080/foo",
req.getRequestURL().toString());
- assertEquals("", req.getServletPath());
+ assertBean(
+ req,
+
"contextPath,pathInfo,pathTranslated,queryString,requestURI,requestURL,servletPath",
+
",/foo,/mock-path/foo,bar=baz,/foo,http://localhost:8080/foo,"
+ );
}
@Test void a03_uris_full2() {
var req = MockServletRequest.create("GET",
"http://localhost:8080/foo/bar/baz?bar=baz#quz");
-
- assertEquals("", req.getContextPath());
- assertEquals("/foo/bar/baz", req.getPathInfo());
- assertEquals("/mock-path/foo/bar/baz", req.getPathTranslated());
- assertEquals("bar=baz", req.getQueryString());
- assertEquals("/foo/bar/baz", req.getRequestURI());
- assertEquals("http://localhost:8080/foo/bar/baz",
req.getRequestURL().toString());
- assertEquals("", req.getServletPath());
+ assertBean(
+ req,
+
"contextPath,pathInfo,pathTranslated,queryString,requestURI,requestURL,servletPath",
+
",/foo/bar/baz,/mock-path/foo/bar/baz,bar=baz,/foo/bar/baz,http://localhost:8080/foo/bar/baz,"
+ );
}
@Test void a04_uris_contextPath() {
var req = MockServletRequest.create("GET",
"http://localhost:8080/foo/bar/baz?bar=baz#quz").contextPath("/foo");
-
- assertEquals("/foo", req.getContextPath());
- assertEquals("/bar/baz", req.getPathInfo());
- assertEquals("/mock-path/bar/baz", req.getPathTranslated());
- assertEquals("bar=baz", req.getQueryString());
- assertEquals("/foo/bar/baz", req.getRequestURI());
- assertEquals("http://localhost:8080/foo/bar/baz",
req.getRequestURL().toString());
- assertEquals("", req.getServletPath());
+ assertBean(
+ req,
+
"contextPath,pathInfo,pathTranslated,queryString,requestURI,requestURL,servletPath",
+
"/foo,/bar/baz,/mock-path/bar/baz,bar=baz,/foo/bar/baz,http://localhost:8080/foo/bar/baz,"
+ );
}
@Test void a05_uris_servletPath() {
- var req = MockServletRequest.create("GET",
"http://localhost:8080/foo/bar/baz?bar=baz#quz").servletPath("/foo");
-
- assertEquals("", req.getContextPath());
- assertEquals("/bar/baz", req.getPathInfo());
- assertEquals("/mock-path/bar/baz", req.getPathTranslated());
- assertEquals("bar=baz", req.getQueryString());
- assertEquals("/foo/bar/baz", req.getRequestURI());
- assertEquals("http://localhost:8080/foo/bar/baz",
req.getRequestURL().toString());
- assertEquals("/foo", req.getServletPath());
+ assertBean(
+ MockServletRequest.create("GET",
"http://localhost:8080/foo/bar/baz?bar=baz#quz").servletPath("/foo"),
+
"contextPath,pathInfo,pathTranslated,queryString,requestURI,requestURL,servletPath",
+
",/bar/baz,/mock-path/bar/baz,bar=baz,/foo/bar/baz,http://localhost:8080/foo/bar/baz,/foo"
+ );
}
//-----------------------------------------------------------------------------------------------------------------
@@ -91,19 +75,23 @@ class MockServletRequest_Test extends SimpleTestBase {
@Test void b01_query_basic() {
var req = MockServletRequest.create("GET",
"/foo?bar=baz&bing=qux");
-
- assertEquals("bar=baz&bing=qux", req.getQueryString());
- assertJson(req.getParameterMap(), "{bar:['baz'],bing:['qux']}");
- assertEquals("baz", req.getParameter("bar"));
assertJson(req.getParameterNames(), "['bar','bing']");
+ assertBean(
+ req,
+ "queryString,parameterMap,parameterNames",
+ "bar=baz&bing=qux,{bar=[baz],bing=[qux]},[bar,bing]"
+ );
+ assertEquals("baz", req.getParameter("bar"));
assertJson(req.getParameterValues("bar"), "['baz']");
}
@Test void b02_query_multivalues() {
var req = MockServletRequest.create("GET",
"/foo?bar=baz&bar=bing");
-
- assertEquals("bar=baz&bar=bing", req.getQueryString());
- assertJson(req.getParameterMap(), "{bar:['baz','bing']}");
- assertEquals("baz", req.getParameter("bar"));
assertJson(req.getParameterNames(), "['bar']");
+ assertBean(
+ req,
+ "queryString,parameterMap,parameterNames",
+ "bar=baz&bar=bing,{bar=[baz,bing]},[bar]"
+ );
+ assertEquals("baz", req.getParameter("bar"));
assertJson(req.getParameterValues("bar"), "['baz','bing']");
}
}
\ No newline at end of file