Changed ClientHttpRequestInterceptor array to List

This commit is contained in:
Arjen Poutsma
2011-08-31 09:03:19 +00:00
parent 4a669d1a0a
commit b06de49c72
4 changed files with 43 additions and 40 deletions

View File

@@ -21,7 +21,10 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URI;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.junit.Before;
import org.junit.Test;
@@ -34,10 +37,8 @@ import org.springframework.http.client.support.HttpRequestWrapper;
import static org.junit.Assert.*;
/**
* @author Arjen Poutsma
*/
public class InterceptingClientHttpRequestFactoryTest {
/** @author Arjen Poutsma */
public class InterceptingClientHttpRequestFactoryTests {
private InterceptingClientHttpRequestFactory requestFactory;
@@ -58,39 +59,39 @@ public class InterceptingClientHttpRequestFactoryTest {
@Test
public void basic() throws Exception {
NoOpInterceptor interceptor1 = new NoOpInterceptor();
NoOpInterceptor interceptor2 = new NoOpInterceptor();
NoOpInterceptor interceptor3 = new NoOpInterceptor();
requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock,
new ClientHttpRequestInterceptor[]{interceptor1, interceptor2, interceptor3});
List<ClientHttpRequestInterceptor> interceptors = new ArrayList<ClientHttpRequestInterceptor>();
interceptors.add(new NoOpInterceptor());
interceptors.add(new NoOpInterceptor());
interceptors.add(new NoOpInterceptor());
requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock, interceptors);
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
ClientHttpResponse response = request.execute();
assertTrue(interceptor1.invoked);
assertTrue(interceptor2.invoked);
assertTrue(interceptor3.invoked);
assertTrue(((NoOpInterceptor) interceptors.get(0)).invoked);
assertTrue(((NoOpInterceptor) interceptors.get(1)).invoked);
assertTrue(((NoOpInterceptor) interceptors.get(2)).invoked);
assertTrue(requestMock.executed);
assertSame(responseMock, response);
}
@Test
public void noExecution() throws Exception {
ClientHttpRequestInterceptor interceptor1 = new ClientHttpRequestInterceptor() {
List<ClientHttpRequestInterceptor> interceptors = new ArrayList<ClientHttpRequestInterceptor>();
interceptors.add(new ClientHttpRequestInterceptor() {
public ClientHttpResponse intercept(HttpRequest request, byte[] body, ClientHttpRequestExecution execution)
throws IOException {
return responseMock;
}
};
});
NoOpInterceptor interceptor2 = new NoOpInterceptor();
requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock,
new ClientHttpRequestInterceptor[]{interceptor1, interceptor2});
interceptors.add(new NoOpInterceptor());
requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock, interceptors);
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
ClientHttpResponse response = request.execute();
assertFalse(interceptor2.invoked);
assertFalse(((NoOpInterceptor) interceptors.get(1)).invoked);
assertFalse(requestMock.executed);
assertSame(responseMock, response);
}
@@ -122,8 +123,8 @@ public class InterceptingClientHttpRequestFactoryTest {
}
};
requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock,
new ClientHttpRequestInterceptor[]{interceptor});
requestFactory =
new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor));
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
request.execute();
@@ -154,8 +155,8 @@ public class InterceptingClientHttpRequestFactoryTest {
}
};
requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock,
new ClientHttpRequestInterceptor[]{interceptor});
requestFactory =
new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor));
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
request.execute();
@@ -186,8 +187,8 @@ public class InterceptingClientHttpRequestFactoryTest {
}
};
requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock,
new ClientHttpRequestInterceptor[]{interceptor});
requestFactory =
new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor));
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
request.execute();
@@ -204,8 +205,8 @@ public class InterceptingClientHttpRequestFactoryTest {
}
};
requestFactory = new InterceptingClientHttpRequestFactory(requestFactoryMock,
new ClientHttpRequestInterceptor[]{interceptor});
requestFactory =
new InterceptingClientHttpRequestFactory(requestFactoryMock, Collections.singletonList(interceptor));
ClientHttpRequest request = requestFactory.createRequest(new URI("http://example.com"), HttpMethod.GET);
request.execute();