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 9df3e1d org.apache.juneau.http tests.
9df3e1d is described below
commit 9df3e1d4c93ecd5840e4decbd96e74412aba1d32
Author: JamesBognar <[email protected]>
AuthorDate: Mon Jul 13 09:27:56 2020 -0400
org.apache.juneau.http tests.
---
.../assertions/FluentComparableAssertion.java | 22 +++++++
.../java/org/apache/juneau/http/BasicHeader.java | 4 ++
.../org/apache/juneau/http/BasicNameValuePair.java | 4 ++
.../org/apache/juneau/http/SerializedHeader.java | 20 +++++-
.../apache/juneau/http/SerializedHttpEntity.java | 71 ++++++++++++++++++++++
.../juneau/http/SerializedNameValuePair.java | 17 ++++++
.../main/ConfigurablePropertyCodeGenerator.java | 17 +++++-
.../juneau/rest/client2/RestClient_Body_Test.java | 54 ++++++++++++----
8 files changed, 192 insertions(+), 17 deletions(-)
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentComparableAssertion.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentComparableAssertion.java
index 2fb403c..edd0149 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentComparableAssertion.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentComparableAssertion.java
@@ -189,4 +189,26 @@ public class FluentComparableAssertion<R> extends
FluentObjectAssertion<R> {
protected int compareTo(Object value) {
return this.value.compareTo(value);
}
+
+ // <FluentSetters>
+
+ @Override /* GENERATED - Assertion */
+ public FluentComparableAssertion<R> msg(String msg, Object...args) {
+ super.msg(msg, args);
+ return this;
+ }
+
+ @Override /* GENERATED - Assertion */
+ public FluentComparableAssertion<R> stderr() {
+ super.stderr();
+ return this;
+ }
+
+ @Override /* GENERATED - Assertion */
+ public FluentComparableAssertion<R> stdout() {
+ super.stdout();
+ return this;
+ }
+
+ // </FluentSetters>
}
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/BasicHeader.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/BasicHeader.java
index 7809f26..0cddf89 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/BasicHeader.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/BasicHeader.java
@@ -288,4 +288,8 @@ public class BasicHeader implements Header, Cloneable,
Serializable {
public String toString() {
return name + ": " + getValue();
}
+
+ // <FluentSetters>
+
+ // </FluentSetters>
}
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/BasicNameValuePair.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/BasicNameValuePair.java
index 9967051..9fe9d86 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/BasicNameValuePair.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/BasicNameValuePair.java
@@ -203,4 +203,8 @@ public class BasicNameValuePair implements NameValuePair,
Headerable {
o = ((Supplier<?>)o).get();
return o;
}
+
+ // <FluentSetters>
+
+ // </FluentSetters>
}
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedHeader.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedHeader.java
index 387c278..92f96ba 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedHeader.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedHeader.java
@@ -18,10 +18,10 @@ import java.util.function.*;
import org.apache.http.*;
import org.apache.juneau.*;
-import org.apache.juneau.http.header.*;
import org.apache.juneau.httppart.*;
import org.apache.juneau.oapi.*;
import org.apache.juneau.serializer.*;
+import org.apache.juneau.svl.*;
import org.apache.juneau.urlencoding.*;
/**
@@ -36,7 +36,7 @@ import org.apache.juneau.urlencoding.*;
* request.setEntity(<jk>new</jk> UrlEncodedFormEntity(params));
* </p>
*/
-public class SerializedHeader extends BasicStringHeader {
+public class SerializedHeader extends BasicHeader {
private static final long serialVersionUID = 1L;
private final Object value;
@@ -170,4 +170,20 @@ public class SerializedHeader extends BasicStringHeader {
throw new BasicRuntimeException(e, "Serialization error
on request {0} parameter ''{1}''", HttpPartType.HEADER, getName());
}
}
+
+ // <FluentSetters>
+
+ @Override /* GENERATED - BasicHeader */
+ public SerializedHeader resolving(VarResolver varResolver) {
+ super.resolving(varResolver);
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHeader */
+ public SerializedHeader resolving(VarResolverSession varSession) {
+ super.resolving(varSession);
+ return this;
+ }
+
+ // </FluentSetters>
}
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedHttpEntity.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedHttpEntity.java
index b87859e..1dd4e7d 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedHttpEntity.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedHttpEntity.java
@@ -23,6 +23,7 @@ import org.apache.juneau.http.header.*;
import org.apache.juneau.httppart.*;
import org.apache.juneau.internal.*;
import org.apache.juneau.serializer.*;
+import org.apache.juneau.svl.*;
import org.apache.juneau.utils.*;
/**
@@ -139,4 +140,74 @@ public class SerializedHttpEntity extends BasicHttpEntity {
}
return new ByteArrayInputStream(cache);
}
+
+ // <FluentSetters>
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity cache() {
+ super.cache();
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity cache(boolean value) {
+ super.cache(value);
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity chunked() {
+ super.chunked();
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity chunked(boolean value) {
+ super.chunked(value);
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity contentEncoding(String value) {
+ super.contentEncoding(value);
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity contentEncoding(Header value) {
+ super.contentEncoding(value);
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity contentLength(long value) {
+ super.contentLength(value);
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity contentType(String value) {
+ super.contentType(value);
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity contentType(Header value) {
+ super.contentType(value);
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity resolving(VarResolver varResolver) {
+ super.resolving(varResolver);
+ return this;
+ }
+
+ @Override /* GENERATED - BasicHttpEntity */
+ public SerializedHttpEntity resolving(VarResolverSession varSession) {
+ super.resolving(varSession);
+ return this;
+ }
+
+ // </FluentSetters>
}
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedNameValuePair.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedNameValuePair.java
index bc3c9e7..19673f7 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedNameValuePair.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/SerializedNameValuePair.java
@@ -21,6 +21,7 @@ import org.apache.juneau.*;
import org.apache.juneau.httppart.*;
import org.apache.juneau.oapi.*;
import org.apache.juneau.serializer.*;
+import org.apache.juneau.svl.*;
import org.apache.juneau.urlencoding.*;
/**
@@ -198,4 +199,20 @@ public class SerializedNameValuePair extends
BasicNameValuePair implements Heade
return ((Supplier<?>)o).get();
return o;
}
+
+ // <FluentSetters>
+
+ @Override /* GENERATED - BasicNameValuePair */
+ public SerializedNameValuePair resolving(VarResolver varResolver) {
+ super.resolving(varResolver);
+ return this;
+ }
+
+ @Override /* GENERATED - BasicNameValuePair */
+ public SerializedNameValuePair resolving(VarResolverSession varSession)
{
+ super.resolving(varSession);
+ return this;
+ }
+
+ // </FluentSetters>
}
diff --git
a/juneau-releng/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java
b/juneau-releng/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java
index 4968ff1..dcbb901 100644
---
a/juneau-releng/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java
+++
b/juneau-releng/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java
@@ -190,10 +190,20 @@ public class ConfigurablePropertyCodeGenerator {
BasicNameValuePair.class,
BasicHttpEntity.class,
BasicHttpResource.class,
+ SerializedNameValuePair.class,
+ SerializedHeader.class,
+ SerializedHttpEntity.class,
+
+ ExecutableInfo.class,
ConstructorInfo.class,
MethodInfo.class
};
+ static Set<Class<?>> ignoreClasses = ASet.of(
+ org.apache.http.entity.AbstractHttpEntity.class,
+ org.apache.http.entity.BasicHttpEntity.class
+ );
+
private static String[] SOURCE_PATHS = {
"juneau-core/juneau-config",
"juneau-core/juneau-dto",
@@ -219,7 +229,7 @@ public class ConfigurablePropertyCodeGenerator {
for (Class<?> c : classes) {
File f = findClassFile(c);
- System.err.println("Processing " + f.getName());
+ System.out.println("Processing " + f.getName());
String s = IOUtils.read(f);
int i1 = s.indexOf("<FluentSetters>"), i2 =
s.indexOf("</FluentSetters>");
@@ -310,7 +320,8 @@ public class ConfigurablePropertyCodeGenerator {
} else if (pc.isAny(Throwable.class,
RuntimeException.class, Exception.class)) {
// Ignore
} else {
-
System.err.println(pc.inner().getSimpleName() + " not found.");
+ if (!
ignoreClasses.contains(pc.inner()))
+
System.err.println(pc.inner().getSimpleName() + " not found in " + c.getName());
}
}
}
@@ -319,7 +330,7 @@ public class ConfigurablePropertyCodeGenerator {
IOUtils.write(f, new StringReader(s));
}
- System.err.println("DONE");
+ System.out.println("DONE");
}
private static String getArgs(Method m) {
diff --git
a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_Body_Test.java
b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_Body_Test.java
index 16cfaca..4df1507 100644
---
a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_Body_Test.java
+++
b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClient_Body_Test.java
@@ -12,6 +12,7 @@
//
***************************************************************************************************************************
package org.apache.juneau.rest.client2;
+import static org.apache.juneau.assertions.Assertions.*;
import static org.junit.runners.MethodSorters.*;
import java.io.*;
@@ -25,6 +26,7 @@ import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.mock2.*;
import org.apache.juneau.serializer.*;
+import org.apache.juneau.svl.*;
import org.apache.juneau.testutils.pojos.*;
import org.junit.*;
@@ -102,6 +104,13 @@ public class RestClient_Body_Test {
BasicHttpResource x9 = httpResource(null);
client().build().post("/",x9).run().getBody().assertString().isEmpty();
+
+ System.setProperty("Test", "bar");
+ BasicHttpResource x10 =
httpResource("$S{Test}").resolving(VarResolver.DEFAULT);
+
client().build().post("/",x10).run().getBody().assertString().is("bar");
+ BasicHttpResource x11 =
httpResource("$S{Test}").resolving((VarResolver)null);
+
client().build().post("/",x11).run().getBody().assertString().is("$S{Test}");
+ System.clearProperty("Test");
}
@Test
@@ -147,6 +156,17 @@ public class RestClient_Body_Test {
BasicHttpEntity x9 = httpEntity(null);
client().build().post("/",x9).run().getBody().assertString().isEmpty();
+
+ System.setProperty("Test", "bar");
+ BasicHttpEntity x10 =
httpEntity("$S{Test}").resolving(VarResolver.DEFAULT);
+
client().build().post("/",x10).run().getBody().assertString().is("bar");
+ BasicHttpEntity x11 =
httpEntity("$S{Test}").resolving((VarResolver)null);
+
client().build().post("/",x11).run().getBody().assertString().is("$S{Test}");
+ System.clearProperty("Test");
+
+ BasicHttpEntity x12 = httpEntity("foo");
+ x12.assertString().is("foo");
+ x12.assertBytes().string().is("foo");
}
@Test
@@ -154,48 +174,58 @@ public class RestClient_Body_Test {
Serializer js = JsonSerializer.DEFAULT;
File f = File.createTempFile("test", "txt");
- SerializedHttpEntity x = serializedHttpEntity(ABean.get(),null);
- client().debug().build().post("/",x).run()
+ SerializedHttpEntity x1 =
serializedHttpEntity(ABean.get(),null);
+ client().debug().build().post("/",x1).run()
.assertHeader("X-Content-Length").doesNotExist()
.assertHeader("X-Content-Encoding").doesNotExist()
.assertHeader("X-Content-Type").doesNotExist()
.assertHeader("X-Transfer-Encoding").is("chunked") //
Because content length is -1.
;
- x = serializedHttpEntity(ABean.get(),js);
- client().build().post("/",x).run()
+ SerializedHttpEntity x2 = serializedHttpEntity(ABean.get(),js);
+ client().build().post("/",x2).run()
.assertHeader("X-Content-Length").doesNotExist()
.assertHeader("X-Content-Encoding").doesNotExist()
.assertHeader("X-Content-Type").is("application/json")
.getBody().assertObject(ABean.class).json().is("{a:1,b:'foo'}");
- x = SerializedHttpEntity.of(()->ABean.get(),js);
- client().build().post("/",x).run()
+ SerializedHttpEntity x3 =
SerializedHttpEntity.of(()->ABean.get(),js);
+ client().build().post("/",x3).run()
.assertHeader("X-Content-Length").doesNotExist()
.assertHeader("X-Content-Encoding").doesNotExist()
.assertHeader("X-Content-Type").is("application/json")
.getBody().assertObject(ABean.class).json().is("{a:1,b:'foo'}");
- x = serializedHttpEntity(new
StringReader("{a:1,b:'foo'}"),null);
- client().build().post("/",x).run()
+ SerializedHttpEntity x4 = serializedHttpEntity(new
StringReader("{a:1,b:'foo'}"),null);
+ client().build().post("/",x4).run()
.assertHeader("X-Content-Length").doesNotExist()
.assertHeader("X-Content-Encoding").doesNotExist()
.assertHeader("X-Content-Type").doesNotExist()
.getBody().assertObject(ABean.class).json().is("{a:1,b:'foo'}");
- x = serializedHttpEntity(new
ByteArrayInputStream("{a:1,b:'foo'}".getBytes()),null);
- client().build().post("/",x).run()
+ SerializedHttpEntity x5 = serializedHttpEntity(new
ByteArrayInputStream("{a:1,b:'foo'}".getBytes()),null);
+ client().build().post("/",x5).run()
.assertHeader("X-Content-Length").doesNotExist()
.assertHeader("X-Content-Encoding").doesNotExist()
.assertHeader("X-Content-Type").doesNotExist()
.getBody().assertObject(ABean.class).json().is("{a:1,b:'foo'}");
- x = serializedHttpEntity(f,null);
- client().build().post("/",x).run()
+ SerializedHttpEntity x6 = serializedHttpEntity(f,null);
+ client().build().post("/",x6).run()
.assertHeader("X-Content-Length").doesNotExist()
.assertHeader("X-Content-Encoding").doesNotExist()
.assertHeader("X-Content-Type").doesNotExist()
.getBody().assertObject(ABean.class).json().is("{a:0}");
+
+ InputStream x7 = new ByteArrayInputStream("foo".getBytes()) {
+ @Override
+ public int read(byte[] b) throws IOException {
+ throw new IOException("bad");
+ }
+ };
+
+ SerializedHttpEntity x8 = new SerializedHttpEntity(x7,
null).cache();
+ assertThrown(()->x8.getContent()).contains("bad");
}
//------------------------------------------------------------------------------------------------------------------