You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2013/10/10 04:58:49 UTC
svn commit: r1530846 -
/cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/cors/CrossOriginSimpleTest.java
Author: dkulp
Date: Thu Oct 10 02:58:49 2013
New Revision: 1530846
URL: http://svn.apache.org/r1530846
Log:
Use new interfaces and such for test and make sure the clients are properly closed
Modified:
cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/cors/CrossOriginSimpleTest.java
Modified: cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/cors/CrossOriginSimpleTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/cors/CrossOriginSimpleTest.java?rev=1530846&r1=1530845&r2=1530846&view=diff
==============================================================================
--- cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/cors/CrossOriginSimpleTest.java (original)
+++ cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/cors/CrossOriginSimpleTest.java Thu Oct 10 02:58:49 2013
@@ -19,6 +19,7 @@
package org.apache.cxf.systest.jaxrs.cors;
+import java.io.Closeable;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
@@ -41,7 +42,7 @@ import org.apache.http.client.HttpClient
import org.apache.http.client.methods.HttpDelete;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpOptions;
-import org.apache.http.impl.client.DefaultHttpClient;
+import org.apache.http.impl.client.HttpClientBuilder;
import org.junit.Before;
import org.junit.BeforeClass;
@@ -88,7 +89,7 @@ public class CrossOriginSimpleTest exten
boolean permitted) throws ClientProtocolException, IOException {
configureAllowOrigins(allOrigins, originList);
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpGet httpget = new HttpGet("http://localhost:" + PORT + "/untest/simpleGet/HelloThere");
if (requestOrigins != null) {
StringBuffer ob = new StringBuffer();
@@ -105,6 +106,10 @@ public class CrossOriginSimpleTest exten
assertEquals("HelloThere", e); // ensure that we didn't bust the operation itself.
assertOriginResponse(allOrigins, requestOrigins, permitted, response);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
+
}
private void assertOriginResponse(boolean allOrigins, String[] requestOrigins, boolean permitted,
@@ -154,7 +159,7 @@ public class CrossOriginSimpleTest exten
@Test
public void preflightPostClassAnnotationFail() throws ClientProtocolException, IOException {
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpOptions httpoptions = new HttpOptions("http://localhost:" + PORT + "/antest/unannotatedPost");
httpoptions.addHeader("Origin", "http://in.org");
// nonsimple header
@@ -166,11 +171,15 @@ public class CrossOriginSimpleTest exten
assertEquals(0, response.getHeaders(CorsHeaderConstants.HEADER_AC_ALLOW_ORIGIN).length);
assertEquals(0, response.getHeaders(CorsHeaderConstants.HEADER_AC_ALLOW_HEADERS).length);
assertEquals(0, response.getHeaders(CorsHeaderConstants.HEADER_AC_ALLOW_METHODS).length);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
+
}
@Test
public void preflightPostClassAnnotationFail2() throws ClientProtocolException, IOException {
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpOptions httpoptions = new HttpOptions("http://localhost:" + PORT + "/antest/unannotatedPost");
httpoptions.addHeader("Origin", "http://area51.mil:31415");
httpoptions.addHeader("Content-Type", "application/json");
@@ -181,11 +190,15 @@ public class CrossOriginSimpleTest exten
assertEquals(0, response.getHeaders(CorsHeaderConstants.HEADER_AC_ALLOW_ORIGIN).length);
assertEquals(0, response.getHeaders(CorsHeaderConstants.HEADER_AC_ALLOW_HEADERS).length);
assertEquals(0, response.getHeaders(CorsHeaderConstants.HEADER_AC_ALLOW_METHODS).length);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
+
}
@Test
public void preflightPostClassAnnotationPass() throws ClientProtocolException, IOException {
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpOptions httpoptions = new HttpOptions("http://localhost:" + PORT + "/antest/unannotatedPost");
httpoptions.addHeader("Origin", "http://area51.mil:31415");
httpoptions.addHeader("Content-Type", "application/json");
@@ -202,11 +215,15 @@ public class CrossOriginSimpleTest exten
Header[] requestHeaders = response.getHeaders(CorsHeaderConstants.HEADER_AC_ALLOW_HEADERS);
assertEquals(1, requestHeaders.length);
assertEquals("X-custom-1", requestHeaders[0].getValue());
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
+
}
@Test
public void preflightPostClassAnnotationPass2() throws ClientProtocolException, IOException {
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpOptions httpoptions = new HttpOptions("http://localhost:" + PORT + "/antest/unannotatedPost");
httpoptions.addHeader("Origin", "http://area51.mil:31415");
httpoptions.addHeader("Content-Type", "application/json");
@@ -224,11 +241,15 @@ public class CrossOriginSimpleTest exten
assertEquals(1, requestHeaders.length);
assertTrue(requestHeaders[0].getValue().contains("X-custom-1"));
assertTrue(requestHeaders[0].getValue().contains("X-custom-2"));
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
+
}
@Test
public void simplePostClassAnnotation() throws ClientProtocolException, IOException {
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpOptions httpoptions = new HttpOptions("http://localhost:" + PORT + "/antest/unannotatedPost");
httpoptions.addHeader("Origin", "http://in.org");
// nonsimple header
@@ -236,6 +257,10 @@ public class CrossOriginSimpleTest exten
httpoptions.addHeader(CorsHeaderConstants.HEADER_AC_REQUEST_METHOD, "POST");
HttpResponse response = httpclient.execute(httpoptions);
assertEquals(200, response.getStatusLine().getStatusCode());
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
+
}
@Test
@@ -301,13 +326,17 @@ public class CrossOriginSimpleTest exten
.accept("text/plain").post(null, String.class);
assertEquals("ok", r);
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpGet httpget = new HttpGet("http://localhost:" + PORT + "/untest/simpleGet/HelloThere");
httpget.addHeader("Origin", "http://localhost:" + PORT);
HttpResponse response = httpclient.execute(httpget);
assertEquals(200, response.getStatusLine().getStatusCode());
assertAllowCredentials(response, true);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
+
}
@Test
@@ -316,13 +345,17 @@ public class CrossOriginSimpleTest exten
.accept("text/plain").post(null, String.class);
assertEquals("ok", r);
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpGet httpget = new HttpGet("http://localhost:" + PORT + "/untest/simpleGet/HelloThere");
httpget.addHeader("Origin", "http://localhost:" + PORT);
HttpResponse response = httpclient.execute(httpget);
assertEquals(200, response.getStatusLine().getStatusCode());
assertAllowCredentials(response, false);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
+
}
@Test
@@ -332,7 +365,7 @@ public class CrossOriginSimpleTest exten
.accept("text/plain").post(null, String.class);
assertEquals("ok", r);
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpDelete httpdelete = new HttpDelete("http://localhost:" + PORT + "/untest/delete");
httpdelete.addHeader("Origin", "http://localhost:" + PORT);
@@ -340,6 +373,9 @@ public class CrossOriginSimpleTest exten
assertEquals(200, response.getStatusLine().getStatusCode());
assertAllowCredentials(response, false);
assertOriginResponse(true, null, true, response);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
}
private void assertAllowCredentials(HttpResponse response, boolean correct) {
@@ -354,7 +390,7 @@ public class CrossOriginSimpleTest exten
String r = configClient.replacePath("/setAllowCredentials/false")
.accept("text/plain").post(null, String.class);
assertEquals("ok", r);
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpGet httpget = new HttpGet("http://localhost:" + PORT + "/untest/annotatedGet/HelloThere");
// this is the origin we expect to get.
httpget.addHeader("Origin", "http://area51.mil:31415");
@@ -365,6 +401,10 @@ public class CrossOriginSimpleTest exten
List<String> exposeHeadersValues
= headerValues(response.getHeaders(CorsHeaderConstants.HEADER_AC_EXPOSE_HEADERS));
assertEquals(Arrays.asList(new String[] {"X-custom-3", "X-custom-4" }), exposeHeadersValues);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
+
}
@Test
@@ -373,7 +413,7 @@ public class CrossOriginSimpleTest exten
String r = configClient.replacePath("/setAllowCredentials/false")
.accept("text/plain").post(null, String.class);
assertEquals("ok", r);
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpOptions http = new HttpOptions("http://localhost:" + PORT + "/untest/annotatedPut");
// this is the origin we expect to get.
http.addHeader("Origin", "http://area51.mil:31415");
@@ -390,11 +430,15 @@ public class CrossOriginSimpleTest exten
List<String> allowHeadersValues
= headerValues(response.getHeaders(CorsHeaderConstants.HEADER_AC_ALLOW_HEADERS));
assertEquals(Arrays.asList(new String[] {"X-custom-1", "X-custom-2" }), allowHeadersValues);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
+
}
@Test
public void testAnnotatedClassCorrectOrigin() throws Exception {
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpGet httpget = new HttpGet("http://localhost:" + PORT + "/antest/simpleGet/HelloThere");
httpget.addHeader("Origin", "http://area51.mil:31415");
@@ -405,11 +449,14 @@ public class CrossOriginSimpleTest exten
assertEquals("HelloThere", e); // ensure that we didn't bust the operation itself.
assertOriginResponse(false, new String[] {"http://area51.mil:31415" }, true, response);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
}
@Test
public void testAnnotatedClassWrongOrigin() throws Exception {
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpGet httpget = new HttpGet("http://localhost:" + PORT + "/antest/simpleGet/HelloThere");
httpget.addHeader("Origin", "http://su.us:1001");
@@ -420,6 +467,9 @@ public class CrossOriginSimpleTest exten
assertEquals("HelloThere", e);
assertOriginResponse(false, null, false, response);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
}
@Test
@@ -429,7 +479,7 @@ public class CrossOriginSimpleTest exten
.accept("text/plain").post(null, String.class);
assertEquals("ok", r);
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpOptions http = new HttpOptions("http://localhost:" + PORT + "/antest/delete");
// this is the origin we expect to get.
http.addHeader("Origin", "http://area51.mil:3333");
@@ -445,6 +495,9 @@ public class CrossOriginSimpleTest exten
List<String> allowedMethods
= headerValues(response.getHeaders(CorsHeaderConstants.HEADER_AC_ALLOW_METHODS));
assertEquals(Arrays.asList("DELETE PUT"), allowedMethods);
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
}
@Test
@@ -454,7 +507,7 @@ public class CrossOriginSimpleTest exten
.accept("text/plain").post(null, String.class);
assertEquals("ok", r);
- HttpClient httpclient = new DefaultHttpClient();
+ HttpClient httpclient = HttpClientBuilder.create().build();
HttpOptions http = new HttpOptions("http://localhost:" + PORT + "/antest/delete");
// this is the origin we expect to get.
http.addHeader("Origin", "http://area51.mil:4444");
@@ -463,6 +516,9 @@ public class CrossOriginSimpleTest exten
assertEquals(200, response.getStatusLine().getStatusCode());
assertOriginResponse(false, new String[]{"http://area51.mil:4444"}, false, response);
// we could check that the others are also missing.
+ if (httpclient instanceof Closeable) {
+ ((Closeable)httpclient).close();
+ }
}
@Ignore