From 5edc70cd285ad58f3da063c0188c71eb58c65bd5 Mon Sep 17 00:00:00 2001 From: Oleg Kalnichevski Date: Sun, 23 May 2010 22:20:44 +0000 Subject: [PATCH] HTTPCLIENT-941: Patch changing Mockito to EasyMock Contributed by Joe Campbell git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@947510 13f79535-47bb-0310-9956-ffa450edef68 --- httpclient/pom.xml | 12 +++- .../http/impl/auth/TestNegotiateScheme.java | 59 +++++++++++++------ pom.xml | 1 - 3 files changed, 49 insertions(+), 23 deletions(-) diff --git a/httpclient/pom.xml b/httpclient/pom.xml index 3ee005a9f..8f1b003a4 100644 --- a/httpclient/pom.xml +++ b/httpclient/pom.xml @@ -74,9 +74,15 @@ test - org.mockito - mockito-all - ${mockito.version} + org.easymock + easymock + ${easymock.version} + test + + + org.easymock + easymockclassextension + ${easymock.version} test diff --git a/httpclient/src/test/java/org/apache/http/impl/auth/TestNegotiateScheme.java b/httpclient/src/test/java/org/apache/http/impl/auth/TestNegotiateScheme.java index 315d03269..4d567e4c5 100644 --- a/httpclient/src/test/java/org/apache/http/impl/auth/TestNegotiateScheme.java +++ b/httpclient/src/test/java/org/apache/http/impl/auth/TestNegotiateScheme.java @@ -51,6 +51,7 @@ import org.apache.http.message.BasicHeader; import org.apache.http.params.HttpParams; import org.apache.http.protocol.HttpContext; import org.apache.http.protocol.HttpRequestHandler; + import org.ietf.jgss.GSSContext; import org.ietf.jgss.GSSCredential; import org.ietf.jgss.GSSManager; @@ -58,8 +59,8 @@ import org.ietf.jgss.GSSName; import org.ietf.jgss.Oid; import org.junit.Before; import org.junit.Test; -import org.mockito.Matchers; -import org.mockito.Mockito; + +import org.easymock.classextension.EasyMock; /** * Tests for {@link NegotiateScheme}. @@ -90,7 +91,6 @@ public class TestNegotiateScheme extends BasicServerTestBase { } } - /** * NegotatieScheme with a custom GSSManager that does not require any Jaas or * Kerberos configuration. @@ -98,28 +98,42 @@ public class TestNegotiateScheme extends BasicServerTestBase { */ private static class NegotiateSchemeWithMockGssManager extends NegotiateScheme { - GSSManager manager = Mockito.mock(GSSManager.class); - GSSName name = Mockito.mock(GSSName.class); - GSSContext context = Mockito.mock(GSSContext.class); - + GSSManager manager = EasyMock.createNiceMock(GSSManager.class); + GSSName name = EasyMock.createNiceMock(GSSName.class); + GSSContext context = EasyMock.createNiceMock(GSSContext.class); + NegotiateSchemeWithMockGssManager() throws Exception { super(null, true); - Mockito.when(context.initSecContext( - Matchers.any(byte[].class), Matchers.anyInt(), Matchers.anyInt())) - .thenReturn("12345678".getBytes()); - Mockito.when(manager.createName( - Matchers.any(String.class), Matchers.any(Oid.class))) - .thenReturn(name); - Mockito.when(manager.createContext( - Matchers.any(GSSName.class), Matchers.any(Oid.class), - Matchers.any(GSSCredential.class), Matchers.anyInt())) - .thenReturn(context); + + EasyMock.expect(context.initSecContext(EasyMock.anyObject(), + EasyMock.anyInt(), EasyMock.anyInt())).andReturn("12345678".getBytes()); + + EasyMock.expect(manager.createName(EasyMock.isA(String.class), + EasyMock.anyObject())).andReturn(name); + + EasyMock.expect(manager.createContext( + EasyMock.isA(GSSName.class),EasyMock.isA(Oid.class), + EasyMock.anyObject(), EasyMock.anyInt())) + .andReturn(context); + + EasyMock.expect(name.canonicalize(EasyMock.isA(Oid.class))) + .andReturn(name); + + EasyMock.replay(context); + EasyMock.replay(name); + EasyMock.replay(manager); } @Override protected GSSManager getManager() { return manager; } + + public void verify() { + EasyMock.verify(context); + EasyMock.verify(name); + EasyMock.verify(manager); + } } @@ -161,7 +175,9 @@ public class TestNegotiateScheme extends BasicServerTestBase { HttpHost target = new HttpHost("localhost", port); DefaultHttpClient client = new DefaultHttpClient(); + NegotiateSchemeFactory nsf = new NegotiateSchemeFactoryWithMockGssManager(); + client.getAuthSchemes().register(AuthPolicy.SPNEGO, nsf); Credentials use_jaas_creds = new UseJaasCredentials(); @@ -176,6 +192,9 @@ public class TestNegotiateScheme extends BasicServerTestBase { if (e != null) { e.consumeContent(); } + + ((NegotiateSchemeFactoryWithMockGssManager)nsf).scheme.verify(); + Assert.assertEquals(HttpStatus.SC_UNAUTHORIZED, response.getStatusLine().getStatusCode()); } @@ -190,9 +209,9 @@ public class TestNegotiateScheme extends BasicServerTestBase { HttpHost target = new HttpHost("localhost", port); DefaultHttpClient client = new DefaultHttpClient(); + NegotiateSchemeFactoryWithMockGssManager nsf = new NegotiateSchemeFactoryWithMockGssManager(); - Mockito.when(nsf.scheme.context.initSecContext( - Matchers.any(byte[].class), Matchers.anyInt(), Matchers.anyInt())).thenReturn(null); + client.getAuthSchemes().register(AuthPolicy.SPNEGO, nsf); Credentials use_jaas_creds = new UseJaasCredentials(); @@ -207,6 +226,8 @@ public class TestNegotiateScheme extends BasicServerTestBase { if (e != null) { e.consumeContent(); } + + nsf.scheme.verify(); Assert.assertEquals(HttpStatus.SC_UNAUTHORIZED, response.getStatusLine().getStatusCode()); } diff --git a/pom.xml b/pom.xml index 19c2cd732..bfd557b01 100644 --- a/pom.xml +++ b/pom.xml @@ -73,7 +73,6 @@ 1.4 4.8.1 2.5.2 - 1.8.4