cxf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From serg...@apache.org
Subject cxf git commit: [CXF-6889] Creating a dedicated test suite, more to follow
Date Fri, 07 Jul 2017 13:02:54 GMT
Repository: cxf
Updated Branches:
  refs/heads/master 3182059e0 -> 44b04b36d


[CXF-6889] Creating a dedicated test suite, more to follow


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/44b04b36
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/44b04b36
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/44b04b36

Branch: refs/heads/master
Commit: 44b04b36d31d519d76812a66a96feae5a4814728
Parents: 3182059
Author: Sergey Beryozkin <sberyozkin@gmail.com>
Authored: Fri Jul 7 14:02:38 2017 +0100
Committer: Sergey Beryozkin <sberyozkin@gmail.com>
Committed: Fri Jul 7 14:02:38 2017 +0100

----------------------------------------------------------------------
 .../cxf/systest/jaxrs/JAXRSAsyncClientTest.java |  42 +----
 .../reactive/JAXRSCompletionStageTest.java      |  99 ++++++++++++
 .../jaxrs/reactive/JAXRSObservableTest.java     | 162 +++++++++++++++++++
 .../jaxrs/reactive/JAXRSReactiveTest.java       | 162 -------------------
 4 files changed, 262 insertions(+), 203 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf/blob/44b04b36/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSAsyncClientTest.java
----------------------------------------------------------------------
diff --git a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSAsyncClientTest.java
b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSAsyncClientTest.java
index 628466f..d0dc048 100644
--- a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSAsyncClientTest.java
+++ b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSAsyncClientTest.java
@@ -27,7 +27,6 @@ import java.lang.annotation.Annotation;
 import java.lang.reflect.Type;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.concurrent.CompletionStage;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.Future;
 
@@ -386,47 +385,8 @@ public class JAXRSAsyncClientTest extends AbstractBusClientServerTestBase
{
         wc.close();
     }
 
-
-    @Test
-    public void testGetBookAsyncStage() throws Exception {
-        String address = "http://localhost:" + PORT + "/bookstore/books";
-        WebClient wc = createWebClient(address);
-        CompletionStage<Book> stage = wc.path("123").rx().get(Book.class);
-        Book book = stage.toCompletableFuture().join();
-        assertEquals(123L, book.getId());
-    }
-    @Test
-    public void testGetBookAsyncStageThenAcceptAsync() throws Exception {
-        String address = "http://localhost:" + PORT + "/bookstore/books";
-        WebClient wc = createWebClient(address);
-        CompletionStage<Book> stage = wc.path("123").rx().get(Book.class);
-        Holder<Book> holder = new Holder<Book>();
-        stage.thenApply(v -> {
-            v.setId(v.getId() * 2);
-            return v;
-        }).thenAcceptAsync(v -> {
-            holder.value = v;
-        });
-        Thread.sleep(3000);
-        assertEquals(246L, holder.value.getId());
-    }
-
-    @Test
-    public void testGetBookAsyncStage404() throws Exception {
-        String address = "http://localhost:" + PORT + "/bookstore/bookheaders/404";
-        WebClient wc = createWebClient(address);
-        CompletionStage<Book> stage = wc.path("123").rx().get(Book.class);
-        try {
-            stage.toCompletableFuture().get();
-            fail("Exception expected");
-        } catch (ExecutionException ex) {
-            assertTrue(ex.getCause() instanceof NotFoundException);
-        }
-
-    }
     private WebClient createWebClient(String address) {
-        List<Object> providers = new ArrayList<>();
-        return WebClient.create(address, providers);
+        return WebClient.create(address);
     }
 
     private InvocationCallback<Object> createCallback(final Holder<Object> holder)
{

http://git-wip-us.apache.org/repos/asf/cxf/blob/44b04b36/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSCompletionStageTest.java
----------------------------------------------------------------------
diff --git a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSCompletionStageTest.java
b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSCompletionStageTest.java
new file mode 100644
index 0000000..b6a4fb7
--- /dev/null
+++ b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSCompletionStageTest.java
@@ -0,0 +1,99 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.cxf.systest.jaxrs.reactive;
+
+import java.util.concurrent.CompletionStage;
+import java.util.concurrent.ExecutionException;
+
+import javax.ws.rs.NotFoundException;
+import javax.xml.ws.Holder;
+
+import org.apache.cxf.jaxrs.client.WebClient;
+import org.apache.cxf.jaxrs.model.AbstractResourceInfo;
+import org.apache.cxf.systest.jaxrs.Book;
+import org.apache.cxf.systest.jaxrs.BookServerAsyncClient;
+import org.apache.cxf.testutil.common.AbstractBusClientServerTestBase;
+
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class JAXRSCompletionStageTest extends AbstractBusClientServerTestBase {
+    public static final String PORT = BookServerAsyncClient.PORT;
+
+    @BeforeClass
+    public static void startServers() throws Exception {
+        AbstractResourceInfo.clearAllMaps();
+        assertTrue("server did not launch correctly",
+                   launchServer(BookServerAsyncClient.class, true));
+        createStaticBus();
+    }
+
+    @Before
+    public void setUp() throws Exception {
+        String property = System.getProperty("test.delay");
+        if (property != null) {
+            Thread.sleep(Long.valueOf(property));
+        }
+    }
+
+
+    @Test
+    public void testGetBookAsyncStage() throws Exception {
+        String address = "http://localhost:" + PORT + "/bookstore/books";
+        WebClient wc = createWebClient(address);
+        CompletionStage<Book> stage = wc.path("123").rx().get(Book.class);
+        Book book = stage.toCompletableFuture().join();
+        assertEquals(123L, book.getId());
+    }
+    @Test
+    public void testGetBookAsyncStageThenAcceptAsync() throws Exception {
+        String address = "http://localhost:" + PORT + "/bookstore/books";
+        WebClient wc = createWebClient(address);
+        CompletionStage<Book> stage = wc.path("123").rx().get(Book.class);
+        Holder<Book> holder = new Holder<Book>();
+        stage.thenApply(v -> {
+            v.setId(v.getId() * 2);
+            return v;
+        }).thenAcceptAsync(v -> {
+            holder.value = v;
+        });
+        Thread.sleep(3000);
+        assertEquals(246L, holder.value.getId());
+    }
+
+    @Test
+    public void testGetBookAsyncStage404() throws Exception {
+        String address = "http://localhost:" + PORT + "/bookstore/bookheaders/404";
+        WebClient wc = createWebClient(address);
+        CompletionStage<Book> stage = wc.path("123").rx().get(Book.class);
+        try {
+            stage.toCompletableFuture().get();
+            fail("Exception expected");
+        } catch (ExecutionException ex) {
+            assertTrue(ex.getCause() instanceof NotFoundException);
+        }
+
+    }
+    private WebClient createWebClient(String address) {
+        return WebClient.create(address);
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/cxf/blob/44b04b36/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSObservableTest.java
----------------------------------------------------------------------
diff --git a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSObservableTest.java
b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSObservableTest.java
new file mode 100644
index 0000000..08106ea
--- /dev/null
+++ b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSObservableTest.java
@@ -0,0 +1,162 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.cxf.systest.jaxrs.reactive;
+
+import java.util.Collections;
+import java.util.List;
+import java.util.concurrent.ExecutionException;
+
+import javax.ws.rs.NotFoundException;
+import javax.ws.rs.client.ClientBuilder;
+import javax.ws.rs.client.Invocation;
+import javax.ws.rs.core.GenericType;
+
+import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
+
+import org.apache.cxf.jaxrs.client.WebClient;
+import org.apache.cxf.jaxrs.model.AbstractResourceInfo;
+import org.apache.cxf.jaxrs.rx.client.ObservableRxInvoker;
+import org.apache.cxf.jaxrs.rx.client.ObservableRxInvokerProvider;
+import org.apache.cxf.jaxrs.rx.provider.ObservableReader;
+import org.apache.cxf.testutil.common.AbstractBusClientServerTestBase;
+
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+import rx.Observable;
+
+public class JAXRSObservableTest extends AbstractBusClientServerTestBase {
+    public static final String PORT = ReactiveServer.PORT;
+    @BeforeClass
+    public static void startServers() throws Exception {
+        AbstractResourceInfo.clearAllMaps();
+        assertTrue("server did not launch correctly",
+                   launchServer(ReactiveServer.class, true));
+        createStaticBus();
+    }
+    @Test
+    public void testGetHelloWorldText() throws Exception {
+        String address = "http://localhost:" + PORT + "/reactive/text";
+        WebClient wc = WebClient.create(address);
+        String text = wc.accept("text/plain").get(String.class);
+        assertEquals("Hello, world!", text);
+    }
+    @Test
+    public void testGetHelloWorldAsyncText() throws Exception {
+        String address = "http://localhost:" + PORT + "/reactive/textAsync";
+        WebClient wc = WebClient.create(address);
+        String text = wc.accept("text/plain").get(String.class);
+        assertEquals("Hello, world!", text);
+    }
+
+    @Test
+    public void testGetHelloWorldTextObservableSync() throws Exception {
+        String address = "http://localhost:" + PORT + "/reactive/text";
+        WebClient wc = WebClient.create(address, Collections.singletonList(
+            new ObservableReader<Object>()));
+        GenericType<Observable<String>> genericResponseType =
+            new GenericType<Observable<String>>() {
+            };
+        Observable<String> obs = wc.accept("text/plain").get(genericResponseType);
+        obs.subscribe(s -> assertResponse(s));
+    }
+
+    private void assertResponse(String s) {
+        assertEquals("Hello, world!", s);
+    }
+    @Test
+    public void testGetHelloWorldJson() throws Exception {
+        String address = "http://localhost:" + PORT + "/reactive/textJson";
+        WebClient wc = WebClient.create(address,
+                                        Collections.singletonList(new JacksonJsonProvider()));
+        HelloWorldBean bean = wc.accept("application/json").get(HelloWorldBean.class);
+        assertEquals("Hello", bean.getGreeting());
+        assertEquals("World", bean.getAudience());
+    }
+    @Test
+    public void testGetHelloWorldJsonList() throws Exception {
+        String address = "http://localhost:" + PORT + "/reactive/textJsonList";
+        doTestGetHelloWorldJsonList(address);
+    }
+    @Test
+    public void testGetHelloWorldJsonImplicitList() throws Exception {
+        String address = "http://localhost:" + PORT + "/reactive/textJsonImplicitList";
+        doTestGetHelloWorldJsonList(address);
+    }
+    @Test
+    public void testGetHelloWorldJsonImplicitListAsync() throws Exception {
+        String address = "http://localhost:" + PORT + "/reactive/textJsonImplicitListAsync";
+        doTestGetHelloWorldJsonList(address);
+    }
+    @Test
+    public void testGetHelloWorldJsonImplicitListAsyncStream() throws Exception {
+        String address = "http://localhost:" + PORT + "/reactive/textJsonImplicitListAsyncStream";
+        doTestGetHelloWorldJsonList(address);
+    }
+    private void doTestGetHelloWorldJsonList(String address) throws Exception {
+        WebClient wc = WebClient.create(address,
+                                        Collections.singletonList(new JacksonJsonProvider()));
+        WebClient.getConfig(wc).getHttpConduit().getClient().setReceiveTimeout(10000000);
+        GenericType<List<HelloWorldBean>> genericResponseType = new GenericType<List<HelloWorldBean>>()
{
+        };
+
+        List<HelloWorldBean> beans = wc.accept("application/json").get(genericResponseType);
+        assertEquals(2, beans.size());
+        assertEquals("Hello", beans.get(0).getGreeting());
+        assertEquals("World", beans.get(0).getAudience());
+        assertEquals("Ciao", beans.get(1).getGreeting());
+        assertEquals("World", beans.get(1).getAudience());
+    }
+
+    @Test
+    public void testGetHelloWorldAsyncObservable() throws Exception {
+        String address = "http://localhost:" + PORT + "/reactive/textAsync";
+        WebClient wc = WebClient.create(address,
+                                        Collections.singletonList(new ObservableRxInvokerProvider()));
+        Observable<String> obs = wc.accept("text/plain")
+            .rx(ObservableRxInvoker.class)
+            .get(String.class);
+        obs.map(s -> {
+            return s + s;
+        });
+
+        Thread.sleep(3000);
+
+        obs.subscribe(s -> assertDuplicateResponse(s));
+    }
+    @Test
+    public void testGetHelloWorldAsyncObservable404() throws Exception {
+        String address = "http://localhost:" + PORT + "/reactive/textAsync404";
+        Invocation.Builder b = ClientBuilder.newClient().register(new ObservableRxInvokerProvider())
+            .target(address).request();
+        b.rx(ObservableRxInvoker.class).get(String.class).subscribe(
+            s -> {
+                fail("Exception expected");
+            },
+            t -> validateT((ExecutionException)t));
+    }
+
+    private void validateT(ExecutionException t) {
+        assertTrue(t.getCause() instanceof NotFoundException);
+    }
+    private void assertDuplicateResponse(String s) {
+        assertEquals("Hello, world!Hello, world!", s);
+    }
+}

http://git-wip-us.apache.org/repos/asf/cxf/blob/44b04b36/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSReactiveTest.java
----------------------------------------------------------------------
diff --git a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSReactiveTest.java
b/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSReactiveTest.java
deleted file mode 100644
index dd8ee5c..0000000
--- a/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/reactive/JAXRSReactiveTest.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.cxf.systest.jaxrs.reactive;
-
-import java.util.Collections;
-import java.util.List;
-import java.util.concurrent.ExecutionException;
-
-import javax.ws.rs.NotFoundException;
-import javax.ws.rs.client.ClientBuilder;
-import javax.ws.rs.client.Invocation;
-import javax.ws.rs.core.GenericType;
-
-import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
-
-import org.apache.cxf.jaxrs.client.WebClient;
-import org.apache.cxf.jaxrs.model.AbstractResourceInfo;
-import org.apache.cxf.jaxrs.rx.client.ObservableRxInvoker;
-import org.apache.cxf.jaxrs.rx.client.ObservableRxInvokerProvider;
-import org.apache.cxf.jaxrs.rx.provider.ObservableReader;
-import org.apache.cxf.testutil.common.AbstractBusClientServerTestBase;
-
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import rx.Observable;
-
-public class JAXRSReactiveTest extends AbstractBusClientServerTestBase {
-    public static final String PORT = ReactiveServer.PORT;
-    @BeforeClass
-    public static void startServers() throws Exception {
-        AbstractResourceInfo.clearAllMaps();
-        assertTrue("server did not launch correctly",
-                   launchServer(ReactiveServer.class, true));
-        createStaticBus();
-    }
-    @Test
-    public void testGetHelloWorldText() throws Exception {
-        String address = "http://localhost:" + PORT + "/reactive/text";
-        WebClient wc = WebClient.create(address);
-        String text = wc.accept("text/plain").get(String.class);
-        assertEquals("Hello, world!", text);
-    }
-    @Test
-    public void testGetHelloWorldAsyncText() throws Exception {
-        String address = "http://localhost:" + PORT + "/reactive/textAsync";
-        WebClient wc = WebClient.create(address);
-        String text = wc.accept("text/plain").get(String.class);
-        assertEquals("Hello, world!", text);
-    }
-
-    @Test
-    public void testGetHelloWorldTextObservableSync() throws Exception {
-        String address = "http://localhost:" + PORT + "/reactive/text";
-        WebClient wc = WebClient.create(address, Collections.singletonList(
-            new ObservableReader<Object>()));
-        GenericType<Observable<String>> genericResponseType =
-            new GenericType<Observable<String>>() {
-            };
-        Observable<String> obs = wc.accept("text/plain").get(genericResponseType);
-        obs.subscribe(s -> assertResponse(s));
-    }
-
-    private void assertResponse(String s) {
-        assertEquals("Hello, world!", s);
-    }
-    @Test
-    public void testGetHelloWorldJson() throws Exception {
-        String address = "http://localhost:" + PORT + "/reactive/textJson";
-        WebClient wc = WebClient.create(address,
-                                        Collections.singletonList(new JacksonJsonProvider()));
-        HelloWorldBean bean = wc.accept("application/json").get(HelloWorldBean.class);
-        assertEquals("Hello", bean.getGreeting());
-        assertEquals("World", bean.getAudience());
-    }
-    @Test
-    public void testGetHelloWorldJsonList() throws Exception {
-        String address = "http://localhost:" + PORT + "/reactive/textJsonList";
-        doTestGetHelloWorldJsonList(address);
-    }
-    @Test
-    public void testGetHelloWorldJsonImplicitList() throws Exception {
-        String address = "http://localhost:" + PORT + "/reactive/textJsonImplicitList";
-        doTestGetHelloWorldJsonList(address);
-    }
-    @Test
-    public void testGetHelloWorldJsonImplicitListAsync() throws Exception {
-        String address = "http://localhost:" + PORT + "/reactive/textJsonImplicitListAsync";
-        doTestGetHelloWorldJsonList(address);
-    }
-    @Test
-    public void testGetHelloWorldJsonImplicitListAsyncStream() throws Exception {
-        String address = "http://localhost:" + PORT + "/reactive/textJsonImplicitListAsyncStream";
-        doTestGetHelloWorldJsonList(address);
-    }
-    private void doTestGetHelloWorldJsonList(String address) throws Exception {
-        WebClient wc = WebClient.create(address,
-                                        Collections.singletonList(new JacksonJsonProvider()));
-        WebClient.getConfig(wc).getHttpConduit().getClient().setReceiveTimeout(10000000);
-        GenericType<List<HelloWorldBean>> genericResponseType = new GenericType<List<HelloWorldBean>>()
{
-        };
-
-        List<HelloWorldBean> beans = wc.accept("application/json").get(genericResponseType);
-        assertEquals(2, beans.size());
-        assertEquals("Hello", beans.get(0).getGreeting());
-        assertEquals("World", beans.get(0).getAudience());
-        assertEquals("Ciao", beans.get(1).getGreeting());
-        assertEquals("World", beans.get(1).getAudience());
-    }
-
-    @Test
-    public void testGetHelloWorldAsyncObservable() throws Exception {
-        String address = "http://localhost:" + PORT + "/reactive/textAsync";
-        WebClient wc = WebClient.create(address,
-                                        Collections.singletonList(new ObservableRxInvokerProvider()));
-        Observable<String> obs = wc.accept("text/plain")
-            .rx(ObservableRxInvoker.class)
-            .get(String.class);
-        obs.map(s -> {
-            return s + s;
-        });
-
-        Thread.sleep(3000);
-
-        obs.subscribe(s -> assertDuplicateResponse(s));
-    }
-    @Test
-    public void testGetHelloWorldAsyncObservable404() throws Exception {
-        String address = "http://localhost:" + PORT + "/reactive/textAsync404";
-        Invocation.Builder b = ClientBuilder.newClient().register(new ObservableRxInvokerProvider())
-            .target(address).request();
-        b.rx(ObservableRxInvoker.class).get(String.class).subscribe(
-            s -> {
-                fail("Exception expected");
-            },
-            t -> validateT((ExecutionException)t));
-    }
-
-    private void validateT(ExecutionException t) {
-        assertTrue(t.getCause() instanceof NotFoundException);
-    }
-    private void assertDuplicateResponse(String s) {
-        assertEquals("Hello, world!Hello, world!", s);
-    }
-}


Mime
View raw message