This is an automated email from the ASF dual-hosted git repository.

buhhunyx pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cxf.git


The following commit(s) were added to refs/heads/master by this push:
     new 35109bd  [cxf-systests-jaxrs] use BlockingQueue instead of Thread.sleep
35109bd is described below

commit 35109bda0481badb8ea7294d232de02fa8e9408f
Author: amarkevich <[email protected]>
AuthorDate: Wed Mar 13 12:16:04 2019 +0300

    [cxf-systests-jaxrs] use BlockingQueue instead of Thread.sleep
---
 .../cxf/systest/jaxrs/reactor/FluxReactorTest.java | 38 +++++++++++--------
 .../cxf/systest/jaxrs/reactor/MonoReactorTest.java | 44 +++++++++++-----------
 .../cxf/systest/jaxrs/reactor/MonoService.java     |  2 +-
 3 files changed, 46 insertions(+), 38 deletions(-)

diff --git 
a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/FluxReactorTest.java
 
b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/FluxReactorTest.java
index 555c701..1fe4e3c 100644
--- 
a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/FluxReactorTest.java
+++ 
b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/FluxReactorTest.java
@@ -19,10 +19,12 @@
 
 package org.apache.cxf.systest.jaxrs.reactor;
 
-import java.util.ArrayList;
-import java.util.List;
+import java.util.concurrent.BlockingQueue;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.TimeUnit;
 
 import javax.ws.rs.client.ClientBuilder;
+import javax.ws.rs.core.MediaType;
 
 import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
 
@@ -35,6 +37,7 @@ import org.junit.BeforeClass;
 import org.junit.Test;
 
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 
 public class FluxReactorTest extends AbstractBusClientServerTestBase {
@@ -48,19 +51,19 @@ public class FluxReactorTest extends 
AbstractBusClientServerTestBase {
     @Test
     public void testGetHelloWorldJson() throws Exception {
         String address = "http://localhost:"; + PORT + "/reactor/flux/textJson";
-        List<HelloWorldBean> collector = new ArrayList<>();
+        final BlockingQueue<HelloWorldBean> holder = new 
LinkedBlockingQueue<>();
         ClientBuilder.newClient()
                 .register(new JacksonJsonProvider())
                 .register(new ReactorInvokerProvider())
                 .target(address)
-                .request("application/json")
+                .request(MediaType.APPLICATION_JSON)
                 .rx(ReactorInvoker.class)
                 .get(HelloWorldBean.class)
-                .doOnNext(collector::add)
+                .doOnNext(holder::offer)
                 .subscribe();
-        Thread.sleep(500);
-        assertEquals(1, collector.size());
-        HelloWorldBean bean = collector.get(0);
+
+        HelloWorldBean bean = holder.poll(1L, TimeUnit.SECONDS);
+        assertNotNull(bean);
         assertEquals("Hello", bean.getGreeting());
         assertEquals("World", bean.getAudience());
     }
@@ -76,20 +79,23 @@ public class FluxReactorTest extends 
AbstractBusClientServerTestBase {
         doTestTextJsonImplicitListAsyncStream(address);
     }
     private void doTestTextJsonImplicitListAsyncStream(String address) throws 
Exception {
-        List<HelloWorldBean> holder = new ArrayList<>();
+        final BlockingQueue<HelloWorldBean> holder = new 
LinkedBlockingQueue<>();
         ClientBuilder.newClient()
                 .register(new JacksonJsonProvider())
                 .register(new ReactorInvokerProvider())
                 .target(address)
-                .request("application/json")
+                .request(MediaType.APPLICATION_JSON)
                 .rx(ReactorInvoker.class)
                 .getFlux(HelloWorldBean.class)
-                .doOnNext(holder::add)
+                .doOnNext(holder::offer)
                 .subscribe();
-        Thread.sleep(500);
-        assertEquals(2, holder.size());
-        assertEquals("Hello", holder.get(0).getGreeting());
-        assertEquals("World", holder.get(0).getAudience());
-        assertEquals("Ciao", holder.get(1).getGreeting());
+
+        HelloWorldBean bean = holder.poll(1L, TimeUnit.SECONDS);
+        assertNotNull(bean);
+        assertEquals("Hello", bean.getGreeting());
+        assertEquals("World", bean.getAudience());
+        bean = holder.poll(1L, TimeUnit.SECONDS);
+        assertNotNull(bean);
+        assertEquals("Ciao", bean.getGreeting());
     }
 }
diff --git 
a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/MonoReactorTest.java
 
b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/MonoReactorTest.java
index 7ed9c45..4d7be49 100644
--- 
a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/MonoReactorTest.java
+++ 
b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/MonoReactorTest.java
@@ -19,11 +19,12 @@
 
 package org.apache.cxf.systest.jaxrs.reactor;
 
-import java.util.ArrayList;
-import java.util.List;
+import java.util.concurrent.BlockingQueue;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.TimeUnit;
 
 import javax.ws.rs.client.ClientBuilder;
-import javax.xml.ws.Holder;
+import javax.ws.rs.core.MediaType;
 
 import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
 
@@ -50,19 +51,19 @@ public class MonoReactorTest extends 
AbstractBusClientServerTestBase {
     @Test
     public void testGetHelloWorldJson() throws Exception {
         String address = "http://localhost:"; + PORT + "/reactor/mono/textJson";
-        List<HelloWorldBean> holder = new ArrayList<>();
+        final BlockingQueue<HelloWorldBean> holder = new 
LinkedBlockingQueue<>();
         ClientBuilder.newClient()
                 .register(new JacksonJsonProvider())
                 .register(new ReactorInvokerProvider())
                 .target(address)
-                .request("application/json")
+                .request(MediaType.APPLICATION_JSON)
                 .rx(ReactorInvoker.class)
                 .get(HelloWorldBean.class)
-                .doOnNext(holder::add)
+                .doOnNext(holder::offer)
                 .subscribe();
-        Thread.sleep(500);
-        assertEquals(1, holder.size());
-        HelloWorldBean bean = holder.get(0);
+
+        HelloWorldBean bean = holder.poll(1L, TimeUnit.SECONDS);
+        assertNotNull(bean);
         assertEquals("Hello", bean.getGreeting());
         assertEquals("World", bean.getAudience());
     }
@@ -70,36 +71,37 @@ public class MonoReactorTest extends 
AbstractBusClientServerTestBase {
     @Test
     public void testTextJsonImplicitListAsyncStream() throws Exception {
         String address = "http://localhost:"; + PORT + 
"/reactor/mono/textJsonImplicitListAsyncStream";
-        Holder<HelloWorldBean> holder = new Holder<>();
+        final BlockingQueue<HelloWorldBean> holder = new 
LinkedBlockingQueue<>();
         ClientBuilder.newClient()
                 .register(new JacksonJsonProvider())
                 .register(new ReactorInvokerProvider())
                 .target(address)
-                .request("application/json")
+                .request(MediaType.APPLICATION_JSON)
                 .rx(ReactorInvoker.class)
                 .get(HelloWorldBean.class)
-                .doOnNext(helloWorldBean -> holder.value = helloWorldBean)
+                .doOnNext(holder::offer)
                 .subscribe();
-        Thread.sleep(500);
-        assertNotNull(holder.value);
-        assertEquals("Hello", holder.value.getGreeting());
-        assertEquals("World", holder.value.getAudience());
+        HelloWorldBean bean = holder.poll(1L, TimeUnit.SECONDS);
+        assertNotNull(bean);
+        assertEquals("Hello", bean.getGreeting());
+        assertEquals("World", bean.getAudience());
     }
 
     @Test
     public void testGetString() throws Exception {
         String address = "http://localhost:"; + PORT + 
"/reactor/mono/textAsync";
-        Holder<String> holder = new Holder<>();
+        final BlockingQueue<String> holder = new LinkedBlockingQueue<>();
         ClientBuilder.newClient()
                 .register(new ReactorInvokerProvider())
                 .target(address)
-                .request("text/plain")
+                .request(MediaType.TEXT_PLAIN)
                 .rx(ReactorInvoker.class)
                 .get(String.class)
-                .doOnNext(msg -> holder.value = msg)
+                .doOnNext(holder::offer)
                 .subscribe();
 
-        Thread.sleep(500);
-        assertEquals("Hello, world!", holder.value);
+        String value = holder.poll(1L, TimeUnit.SECONDS);
+        assertNotNull(value);
+        assertEquals("Hello, world!", value);
     }
 }
diff --git 
a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/MonoService.java
 
b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/MonoService.java
index d45eb79..ebec34d 100644
--- 
a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/MonoService.java
+++ 
b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactor/MonoService.java
@@ -47,7 +47,7 @@ public class MonoService {
         Mono.just("Hello")
                 .map(HelloWorldBean::new)
                 .subscribeOn(Schedulers.elastic())
-                .subscribe(new JsonStreamingAsyncSubscriber<>(ar, null, null, 
null, 1000, 0));
+                .subscribe(new JsonStreamingAsyncSubscriber<>(ar, null, null, 
null, 1000L, 0L));
     }
 
     @GET

Reply via email to