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 954a98b  RestClient tests.
954a98b is described below

commit 954a98ba724fd214bbd05f5637225f15de3a70f0
Author: JamesBognar <james.bog...@salesforce.com>
AuthorDate: Thu Jun 4 10:42:08 2020 -0400

    RestClient tests.
---
 .../juneau/reflection/ExecutableInfoTest.java      |  8 ++---
 .../org/apache/juneau/reflect/ExecutableInfo.java  | 10 ++++++
 .../java/org/apache/juneau/reflect/FieldInfo.java  | 22 ++++++++++++
 .../apache/juneau/rest/client2/RestClientTest.java | 39 ++++++++++++----------
 .../juneau/rest/client2/RestClientBuilder.java     |  2 +-
 5 files changed, 59 insertions(+), 22 deletions(-)

diff --git 
a/juneau-core/juneau-core-utest/src/test/java/org/apache/juneau/reflection/ExecutableInfoTest.java
 
b/juneau-core/juneau-core-utest/src/test/java/org/apache/juneau/reflection/ExecutableInfoTest.java
index 24f2fbb..b6467ec 100644
--- 
a/juneau-core/juneau-core-utest/src/test/java/org/apache/juneau/reflection/ExecutableInfoTest.java
+++ 
b/juneau-core/juneau-core-utest/src/test/java/org/apache/juneau/reflection/ExecutableInfoTest.java
@@ -570,10 +570,10 @@ public class ExecutableInfoTest {
 
        @Test
        public void setAccessible() {
-               f_isPublic.setAccessible();
-               f_isProtected.setAccessible();
-               f_isPrivate.setAccessible();
-               f_isDefault.setAccessible();
+               f_isPublic.accessible();
+               f_isProtected.accessible();
+               f_isPrivate.accessible();
+               f_isDefault.accessible();
        }
 
        @Test
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ExecutableInfo.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ExecutableInfo.java
index a0a7963..b60ac3e 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ExecutableInfo.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/ExecutableInfo.java
@@ -686,6 +686,16 @@ public abstract class ExecutableInfo {
        /**
         * Attempts to call <code>x.setAccessible(<jk>true</jk>)</code> and 
quietly ignores security exceptions.
         *
+        * @return This object (for method chaining).
+        */
+       public ExecutableInfo accessible() {
+               setAccessible();
+               return this;
+       }
+
+       /**
+        * Attempts to call <code>x.setAccessible(<jk>true</jk>)</code> and 
quietly ignores security exceptions.
+        *
         * @return <jk>true</jk> if call was successful.
         */
        public final boolean setAccessible() {
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/FieldInfo.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/FieldInfo.java
index 4f9ad19..84772e2 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/FieldInfo.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/reflect/FieldInfo.java
@@ -324,6 +324,16 @@ public final class FieldInfo implements 
Comparable<FieldInfo> {
        /**
         * Attempts to call <code>x.setAccessible(<jk>true</jk>)</code> and 
quietly ignores security exceptions.
         *
+        * @return This object (for method chaining).
+        */
+       public FieldInfo accessible() {
+               setAccessible();
+               return this;
+       }
+
+       /**
+        * Attempts to call <code>x.setAccessible(<jk>true</jk>)</code> and 
quietly ignores security exceptions.
+        *
         * @return <jk>true</jk> if call was successful.
         */
        public boolean setAccessible() {
@@ -379,4 +389,16 @@ public final class FieldInfo implements 
Comparable<FieldInfo> {
        public String getName() {
                return f.getName();
        }
+
+       /**
+        * Invokes this field on the specified object.
+        *
+        * @param o The object containing the field.
+        * @return The field value.
+        * @throws IllegalAccessException Field was not accessible.
+        * @throws IllegalArgumentException Field does not belong to object.
+        */
+       public Object invoke(Object o) throws IllegalArgumentException, 
IllegalAccessException {
+               return f.get(o);
+       }
 }
diff --git 
a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClientTest.java
 
b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClientTest.java
index aa7b716..30a443a 100644
--- 
a/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClientTest.java
+++ 
b/juneau-rest/juneau-rest-client-utest/src/test/java/org/apache/juneau/rest/client2/RestClientTest.java
@@ -135,16 +135,7 @@ public class RestClientTest {
 
        @Test
        public void a02_useNoArgConstructor() {
-//             new A2()
-//                     .
-//             .create(A.class)
-//             .simpleJson()
-//             .logToConsole()
-//             .build()
-//             .post("/bean", bean)
-//             .complete();
-//             A2.create().httpClientBuilder(cb).build().builder().build();
-//             RestClient.create().httpClient(hc).build().builder().build();
+               new A2().build();
        }
 
        
//------------------------------------------------------------------------------------------------------------------
@@ -344,15 +335,29 @@ public class RestClientTest {
        
//------------------------------------------------------------------------------------------------------------------
 
        @Test
-       public void d01_pooled() throws RestCallException {
-               MockRestClient
-                       .create(A.class)
+       public void d01_pooled() throws Exception {
+               RestClient rc = RestClient
+                       .create()
                        .simpleJson()
                        .pooled()
-                       .build()
-                       .get("/echo")
-                       .run()
-                       .assertBody().contains("HTTP GET /echo");
+                       .build();
+               Object hc = rc.httpClient;
+               assertEquals("PoolingHttpClientConnectionManager", 
ClassInfo.of(hc).getDeclaredField("connManager").accessible().invoke(hc).getClass().getSimpleName());
+
+               rc = RestClient
+                       .create()
+                       .simpleJson()
+                       .build();
+               hc = rc.httpClient;
+               assertEquals("BasicHttpClientConnectionManager", 
ClassInfo.of(hc).getDeclaredField("connManager").accessible().invoke(hc).getClass().getSimpleName());
+
+               rc = MockRestClient
+                       .create(A.class)
+                       .pooled()
+                       .simpleJson()
+                       .build();
+               hc = rc.httpClient;
+               assertEquals("MockHttpClientConnectionManager", 
ClassInfo.of(hc).getDeclaredField("connManager").accessible().invoke(hc).getClass().getSimpleName());
        }
 
        
//------------------------------------------------------------------------------------------------------------------
diff --git 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
index 7685f50..9b3e551 100644
--- 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
+++ 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
@@ -115,7 +115,7 @@ public class RestClientBuilder extends BeanContextBuilder {
         * Provided so that this class can be easily subclassed.
         */
        protected RestClientBuilder() {
-               super(null);
+               this(null);
        }
 
        @Override /* ContextBuilder */

Reply via email to