You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2012/12/08 20:59:26 UTC

svn commit: r1418743 [2/6] - in /httpcomponents/httpclient/trunk: httpclient-cache/src/main/java/org/apache/http/impl/client/cache/ httpclient-cache/src/main/java/org/apache/http/impl/client/cache/memcached/ httpclient-cache/src/test/java/org/apache/ht...

Modified: httpcomponents/httpclient/trunk/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidationRequest.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidationRequest.java?rev=1418743&r1=1418742&r2=1418743&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidationRequest.java (original)
+++ httpcomponents/httpclient/trunk/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidationRequest.java Sat Dec  8 19:59:24 2012
@@ -31,9 +31,11 @@ import java.io.IOException;
 import org.apache.http.HttpHost;
 import org.apache.http.ProtocolException;
 import org.apache.http.client.cache.HttpCacheEntry;
+import org.apache.http.client.methods.HttpExecutionAware;
 import org.apache.http.client.methods.HttpGet;
 import org.apache.http.client.methods.HttpRequestWrapper;
-import org.apache.http.protocol.HttpContext;
+import org.apache.http.client.protocol.HttpClientContext;
+import org.apache.http.conn.routing.HttpRoute;
 import org.easymock.classextension.EasyMock;
 import org.junit.Before;
 import org.junit.Test;
@@ -41,51 +43,56 @@ import org.junit.Test;
 public class TestAsynchronousValidationRequest {
 
     private AsynchronousValidator mockParent;
-    private CachingHttpClient mockClient;
-    private HttpHost target;
+    private CachingExec mockClient;
+    private HttpRoute route;
     private HttpRequestWrapper request;
-    private HttpContext mockContext;
+    private HttpClientContext context;
+    private HttpExecutionAware mockExecAware;
     private HttpCacheEntry mockCacheEntry;
 
     @Before
     public void setUp() {
         mockParent = EasyMock.createNiceMock(AsynchronousValidator.class);
-        mockClient = EasyMock.createNiceMock(CachingHttpClient.class);
-        target = new HttpHost("foo.example.com");
+        mockClient = EasyMock.createNiceMock(CachingExec.class);
+        route = new HttpRoute(new HttpHost("foo.example.com"));
         request = HttpRequestWrapper.wrap(new HttpGet("/"));
-        mockContext = EasyMock.createNiceMock(HttpContext.class);
+        context = HttpClientContext.create();
+        mockExecAware = EasyMock.createNiceMock(HttpExecutionAware.class);
         mockCacheEntry = EasyMock.createNiceMock(HttpCacheEntry.class);
     }
 
     @Test
-    public void testRunCallsCachingClientAndRemovesIdentifier() throws ProtocolException, IOException {
+    public void testRunCallsCachingClientAndRemovesIdentifier() throws Exception {
         String identifier = "foo";
 
-        AsynchronousValidationRequest asynchRequest = new AsynchronousValidationRequest(
-                mockParent, mockClient, target, request, mockContext, mockCacheEntry,
+        AsynchronousValidationRequest impl = new AsynchronousValidationRequest(
+                mockParent, mockClient, route, request, context, mockExecAware, mockCacheEntry,
                 identifier);
 
         // response not used
-        EasyMock.expect(mockClient.revalidateCacheEntry(target, request, mockContext, mockCacheEntry)).andReturn(null);
+        EasyMock.expect(
+                mockClient.revalidateCacheEntry(
+                        route, request, context, mockExecAware, mockCacheEntry)).andReturn(null);
         mockParent.markComplete(identifier);
 
         replayMocks();
-        asynchRequest.run();
+        impl.run();
         verifyMocks();
     }
 
     @Test
-    public void testRunGracefullyHandlesProtocolException() throws IOException, ProtocolException {
+    public void testRunGracefullyHandlesProtocolException() throws Exception {
         String identifier = "foo";
 
         AsynchronousValidationRequest impl = new AsynchronousValidationRequest(
-                mockParent, mockClient, target, request, mockContext, mockCacheEntry,
+                mockParent, mockClient, route, request, context, mockExecAware, mockCacheEntry,
                 identifier);
 
         // response not used
         EasyMock.expect(
-                mockClient.revalidateCacheEntry(target, request, mockContext,
-                        mockCacheEntry)).andThrow(new ProtocolException());
+                mockClient.revalidateCacheEntry(
+                        route, request, context, mockExecAware, mockCacheEntry)).andThrow(
+                                new ProtocolException());
         mockParent.markComplete(identifier);
 
         replayMocks();
@@ -94,17 +101,18 @@ public class TestAsynchronousValidationR
     }
 
     @Test
-    public void testRunGracefullyHandlesIOException() throws IOException, ProtocolException {
+    public void testRunGracefullyHandlesIOException() throws Exception {
         String identifier = "foo";
 
         AsynchronousValidationRequest impl = new AsynchronousValidationRequest(
-                mockParent, mockClient, target, request, mockContext, mockCacheEntry,
+                mockParent, mockClient, route, request, context, mockExecAware, mockCacheEntry,
                 identifier);
 
         // response not used
         EasyMock.expect(
-                mockClient.revalidateCacheEntry(target, request, mockContext,
-                        mockCacheEntry)).andThrow(new IOException());
+                mockClient.revalidateCacheEntry(
+                        route, request, context, mockExecAware, mockCacheEntry)).andThrow(
+                                new IOException());
         mockParent.markComplete(identifier);
 
         replayMocks();
@@ -114,13 +122,13 @@ public class TestAsynchronousValidationR
 
     public void replayMocks() {
         EasyMock.replay(mockClient);
-        EasyMock.replay(mockContext);
+        EasyMock.replay(mockExecAware);
         EasyMock.replay(mockCacheEntry);
     }
 
     public void verifyMocks() {
         EasyMock.verify(mockClient);
-        EasyMock.verify(mockContext);
+        EasyMock.verify(mockExecAware);
         EasyMock.verify(mockCacheEntry);
     }
 }

Modified: httpcomponents/httpclient/trunk/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidator.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpclient/trunk/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidator.java?rev=1418743&r1=1418742&r2=1418743&view=diff
==============================================================================
--- httpcomponents/httpclient/trunk/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidator.java (original)
+++ httpcomponents/httpclient/trunk/httpclient-cache/src/test/java/org/apache/http/impl/client/cache/TestAsynchronousValidator.java Sat Dec  8 19:59:24 2012
@@ -26,7 +26,6 @@
  */
 package org.apache.http.impl.client.cache;
 
-import java.io.IOException;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.RejectedExecutionException;
 import java.util.concurrent.TimeUnit;
@@ -36,13 +35,14 @@ import junit.framework.Assert;
 import org.apache.http.Header;
 import org.apache.http.HttpHost;
 import org.apache.http.HttpRequest;
-import org.apache.http.ProtocolException;
 import org.apache.http.client.cache.HeaderConstants;
 import org.apache.http.client.cache.HttpCacheEntry;
+import org.apache.http.client.methods.HttpExecutionAware;
 import org.apache.http.client.methods.HttpGet;
 import org.apache.http.client.methods.HttpRequestWrapper;
+import org.apache.http.client.protocol.HttpClientContext;
+import org.apache.http.conn.routing.HttpRoute;
 import org.apache.http.message.BasicHeader;
-import org.apache.http.protocol.HttpContext;
 import org.easymock.Capture;
 import org.easymock.classextension.EasyMock;
 import org.junit.Before;
@@ -52,22 +52,23 @@ public class TestAsynchronousValidator {
 
     private AsynchronousValidator impl;
 
-    private CachingHttpClient mockClient;
-    private HttpHost target;
+    private CachingExec mockClient;
+    private HttpRoute route;
     private HttpRequestWrapper request;
-    private HttpContext mockContext;
+    private HttpClientContext context;
+    private HttpExecutionAware mockExecAware;
     private HttpCacheEntry mockCacheEntry;
 
     private ExecutorService mockExecutor;
 
     @Before
     public void setUp() {
-        mockClient = EasyMock.createNiceMock(CachingHttpClient.class);
-        target = new HttpHost("foo.example.com");
+        mockClient = EasyMock.createNiceMock(CachingExec.class);
+        route = new HttpRoute(new HttpHost("foo.example.com"));
         request = HttpRequestWrapper.wrap(new HttpGet("/"));
-        mockContext = EasyMock.createNiceMock(HttpContext.class);
+        context = HttpClientContext.create();
+        mockExecAware = EasyMock.createNiceMock(HttpExecutionAware.class);
         mockCacheEntry = EasyMock.createNiceMock(HttpCacheEntry.class);
-
         mockExecutor = EasyMock.createNiceMock(ExecutorService.class);
 
     }
@@ -80,7 +81,7 @@ public class TestAsynchronousValidator {
         mockExecutor.execute(EasyMock.isA(AsynchronousValidationRequest.class));
 
         replayMocks();
-        impl.revalidateCacheEntry(target, request, mockContext, mockCacheEntry);
+        impl.revalidateCacheEntry(route, request, context, mockExecAware, mockCacheEntry);
         verifyMocks();
 
         Assert.assertEquals(1, impl.getScheduledIdentifiers().size());
@@ -95,7 +96,7 @@ public class TestAsynchronousValidator {
         mockExecutor.execute(EasyMock.capture(cap));
 
         replayMocks();
-        impl.revalidateCacheEntry(target, request, mockContext, mockCacheEntry);
+        impl.revalidateCacheEntry(route, request, context, mockExecAware, mockCacheEntry);
         verifyMocks();
 
         Assert.assertEquals(1, impl.getScheduledIdentifiers().size());
@@ -114,7 +115,7 @@ public class TestAsynchronousValidator {
         EasyMock.expectLastCall().andThrow(new RejectedExecutionException());
 
         replayMocks();
-        impl.revalidateCacheEntry(target, request, mockContext, mockCacheEntry);
+        impl.revalidateCacheEntry(route, request, context, mockExecAware, mockCacheEntry);
         verifyMocks();
 
         Assert.assertEquals(0, impl.getScheduledIdentifiers().size());
@@ -130,8 +131,8 @@ public class TestAsynchronousValidator {
         EasyMock.expect(mockCacheEntry.hasVariants()).andReturn(false);
 
         replayMocks();
-        impl.revalidateCacheEntry(target, request, mockContext, mockCacheEntry);
-        impl.revalidateCacheEntry(target, request, mockContext, mockCacheEntry);
+        impl.revalidateCacheEntry(route, request, context, mockExecAware, mockCacheEntry);
+        impl.revalidateCacheEntry(route, request, context, mockExecAware, mockCacheEntry);
         verifyMocks();
 
         Assert.assertEquals(1, impl.getScheduledIdentifiers().size());
@@ -157,8 +158,8 @@ public class TestAsynchronousValidator {
         EasyMock.expectLastCall().times(2);
 
         replayMocks();
-        impl.revalidateCacheEntry(target, HttpRequestWrapper.wrap(req1), mockContext, mockCacheEntry);
-        impl.revalidateCacheEntry(target, HttpRequestWrapper.wrap(req2), mockContext, mockCacheEntry);
+        impl.revalidateCacheEntry(route, HttpRequestWrapper.wrap(req1), context, mockExecAware, mockCacheEntry);
+        impl.revalidateCacheEntry(route, HttpRequestWrapper.wrap(req2), context, mockExecAware, mockCacheEntry);
         verifyMocks();
 
         Assert.assertEquals(2, impl.getScheduledIdentifiers().size());
@@ -166,7 +167,7 @@ public class TestAsynchronousValidator {
     }
 
     @Test
-    public void testRevalidateCacheEntryEndToEnd() throws ProtocolException, IOException {
+    public void testRevalidateCacheEntryEndToEnd() throws Exception {
         CacheConfig config = CacheConfig.custom()
             .setAsynchronousWorkersMax(1)
             .setAsynchronousWorkersCore(1)
@@ -174,10 +175,11 @@ public class TestAsynchronousValidator {
         impl = new AsynchronousValidator(mockClient, config);
 
         EasyMock.expect(mockCacheEntry.hasVariants()).andReturn(false);
-        EasyMock.expect(mockClient.revalidateCacheEntry(target, request, mockContext, mockCacheEntry)).andReturn(null);
+        EasyMock.expect(mockClient.revalidateCacheEntry(
+                route, request, context, mockExecAware, mockCacheEntry)).andReturn(null);
 
         replayMocks();
-        impl.revalidateCacheEntry(target, request, mockContext, mockCacheEntry);
+        impl.revalidateCacheEntry(route, request, context, mockExecAware, mockCacheEntry);
 
         try {
             // shut down backend executor and make sure all finishes properly, 1 second should be sufficient
@@ -196,14 +198,14 @@ public class TestAsynchronousValidator {
     public void replayMocks() {
         EasyMock.replay(mockExecutor);
         EasyMock.replay(mockClient);
-        EasyMock.replay(mockContext);
+        EasyMock.replay(mockExecAware);
         EasyMock.replay(mockCacheEntry);
     }
 
     public void verifyMocks() {
         EasyMock.verify(mockExecutor);
         EasyMock.verify(mockClient);
-        EasyMock.verify(mockContext);
+        EasyMock.verify(mockExecAware);
         EasyMock.verify(mockCacheEntry);
     }
 }