Skip to content

Commit a77c53e

Browse files
author
Yannis Gonianakis
committed
Remove dependency on easymock. Use mockito instead.
1 parent 1d08013 commit a77c53e

5 files changed

Lines changed: 40 additions & 80 deletions

File tree

pom.xml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,8 @@
3939

4040
<properties>
4141
<net.ripe.ipresource.version>1.45</net.ripe.ipresource.version>
42-
43-
<easymock.version>3.0</easymock.version>
44-
4542
<bouncycastle.version>1.48</bouncycastle.version>
4643
<joda-time.version>1.6.2</joda-time.version>
47-
4844
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
4945
<sonar.clover.reportPath>target/site/clover/clover.xml</sonar.clover.reportPath>
5046
</properties>
@@ -100,9 +96,9 @@
10096
<scope>test</scope>
10197
</dependency>
10298
<dependency>
103-
<groupId>org.easymock</groupId>
104-
<artifactId>easymock</artifactId>
105-
<version>${easymock.version}</version>
99+
<groupId>org.mockito</groupId>
100+
<artifactId>mockito-all</artifactId>
101+
<version>1.8.4</version>
106102
<scope>test</scope>
107103
</dependency>
108104
<dependency>

src/test/java/net/ripe/rpki/commons/crypto/cms/manifest/ManifestCmsTest.java

Lines changed: 17 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@
3030
package net.ripe.rpki.commons.crypto.cms.manifest;
3131

3232
import static net.ripe.rpki.commons.crypto.x509cert.X509CertificateBuilderHelper.*;
33-
import static org.easymock.EasyMock.*;
3433
import static org.junit.Assert.*;
35-
34+
import static org.mockito.Mockito.*;
35+
import javax.security.auth.x500.X500Principal;
3636
import java.math.BigInteger;
3737
import java.net.URI;
3838
import java.security.KeyPair;
@@ -41,36 +41,34 @@
4141
import java.util.HashMap;
4242
import java.util.Map;
4343
import java.util.Map.Entry;
44-
45-
import javax.security.auth.x500.X500Principal;
46-
44+
import net.ripe.ipresource.IpResourceSet;
45+
import net.ripe.ipresource.IpResourceType;
4746
import net.ripe.rpki.commons.crypto.ValidityPeriod;
4847
import net.ripe.rpki.commons.crypto.cms.manifest.ManifestCms.FileContentSpecification;
4948
import net.ripe.rpki.commons.crypto.crl.CrlLocator;
5049
import net.ripe.rpki.commons.crypto.crl.X509Crl;
5150
import net.ripe.rpki.commons.crypto.crl.X509CrlBuilder;
5251
import net.ripe.rpki.commons.crypto.util.KeyPairFactoryTest;
52+
import net.ripe.rpki.commons.crypto.x509cert.X509CertificateInformationAccessDescriptor;
53+
import net.ripe.rpki.commons.crypto.x509cert.X509ResourceCertificate;
54+
import net.ripe.rpki.commons.crypto.x509cert.X509ResourceCertificateBuilder;
55+
import net.ripe.rpki.commons.crypto.x509cert.X509ResourceCertificateTest;
5356
import net.ripe.rpki.commons.validation.ValidationCheck;
5457
import net.ripe.rpki.commons.validation.ValidationLocation;
5558
import net.ripe.rpki.commons.validation.ValidationOptions;
5659
import net.ripe.rpki.commons.validation.ValidationResult;
5760
import net.ripe.rpki.commons.validation.ValidationStatus;
5861
import net.ripe.rpki.commons.validation.ValidationString;
5962
import net.ripe.rpki.commons.validation.objectvalidators.CertificateRepositoryObjectValidationContext;
60-
import net.ripe.rpki.commons.crypto.x509cert.X509CertificateInformationAccessDescriptor;
61-
import net.ripe.rpki.commons.crypto.x509cert.X509ResourceCertificate;
62-
import net.ripe.rpki.commons.crypto.x509cert.X509ResourceCertificateBuilder;
63-
import net.ripe.rpki.commons.crypto.x509cert.X509ResourceCertificateTest;
64-
import net.ripe.ipresource.IpResourceSet;
65-
import net.ripe.ipresource.IpResourceType;
6663
import org.bouncycastle.asn1.x509.KeyUsage;
67-
import org.easymock.IAnswer;
6864
import org.joda.time.DateTime;
6965
import org.joda.time.DateTimeUtils;
7066
import org.joda.time.DateTimeZone;
7167
import org.junit.After;
7268
import org.junit.Before;
7369
import org.junit.Test;
70+
import org.mockito.invocation.InvocationOnMock;
71+
import org.mockito.stubbing.Answer;
7472

7573

7674
public class ManifestCmsTest {
@@ -121,7 +119,7 @@ public void setUp() {
121119
DateTimeUtils.setCurrentMillisFixed(THIS_UPDATE_TIME.getMillis());
122120

123121
rootCertificate = getRootResourceCertificate();
124-
crlLocator = createMock(CrlLocator.class);
122+
crlLocator = mock(CrlLocator.class);
125123
subject = getRootManifestCms();
126124
}
127125

@@ -153,13 +151,10 @@ public void shouldValidateManifestCms() {
153151
CertificateRepositoryObjectValidationContext context = new CertificateRepositoryObjectValidationContext(ROOT_CERTIFICATE_LOCATION, rootCertificate, resources);
154152
ValidationResult result = ValidationResult.withLocation(ROOT_SIA_MANIFEST_RSYNC_LOCATION);
155153

156-
expect(crlLocator.getCrl(ROOT_MANIFEST_CRL_LOCATION, context, result)).andReturn(crl);
157-
replay(crlLocator);
154+
when(crlLocator.getCrl(ROOT_MANIFEST_CRL_LOCATION, context, result)).thenReturn(crl);
158155

159156
subject.validate(ROOT_SIA_MANIFEST_RSYNC_LOCATION.toString(), context, crlLocator, VALIDATION_OPTIONS, result);
160157

161-
verify(crlLocator);
162-
163158
assertEquals(0, result.getFailuresForCurrentLocation().size());
164159
assertFalse(result.hasFailures());
165160
}
@@ -173,20 +168,17 @@ public void shouldNotValidateWithInvalidCrl() {
173168
result.setLocation(new ValidationLocation(ROOT_SIA_MANIFEST_RSYNC_LOCATION));
174169
final ValidationLocation rootMftCrlValidationLocation = new ValidationLocation(ROOT_MANIFEST_CRL_LOCATION);
175170

176-
expect(crlLocator.getCrl(ROOT_MANIFEST_CRL_LOCATION, context, result)).andAnswer(new IAnswer<X509Crl>() {
171+
when(crlLocator.getCrl(ROOT_MANIFEST_CRL_LOCATION, context, result)).thenAnswer(new Answer<X509Crl>() {
177172
@Override
178-
public X509Crl answer() throws Throwable {
173+
public X509Crl answer(InvocationOnMock invocationOnMock) throws Throwable {
179174
assertEquals(rootMftCrlValidationLocation, result.getCurrentLocation());
180175
result.rejectIfFalse(false, ValidationString.CRL_SIGNATURE_VALID);
181176
return null;
182177
}
183178
});
184-
replay(crlLocator);
185179

186180
subject.validate(ROOT_SIA_MANIFEST_RSYNC_LOCATION.toString(), context, crlLocator, VALIDATION_OPTIONS, result);
187181

188-
verify(crlLocator);
189-
190182
assertTrue(result.hasFailureForCurrentLocation());
191183
assertEquals(new ValidationLocation(ROOT_SIA_MANIFEST_RSYNC_LOCATION), result.getCurrentLocation());
192184
assertTrue(result.hasFailureForLocation(rootMftCrlValidationLocation));
@@ -207,13 +199,10 @@ public void shouldWarnWhenManifestIsStale() {
207199
options.setMaxStaleDays(Integer.MAX_VALUE);
208200
ValidationResult result = ValidationResult.withLocation(ROOT_SIA_MANIFEST_RSYNC_LOCATION);
209201

210-
expect(crlLocator.getCrl(ROOT_MANIFEST_CRL_LOCATION, context, result)).andReturn(crl);
211-
replay(crlLocator);
202+
when(crlLocator.getCrl(ROOT_MANIFEST_CRL_LOCATION, context, result)).thenReturn(crl);
212203

213204
subject.validate(ROOT_SIA_MANIFEST_RSYNC_LOCATION.toString(), context, crlLocator, options, result);
214205

215-
verify(crlLocator);
216-
217206
assertFalse(result.hasFailures());
218207
assertEquals(0, result.getFailuresForCurrentLocation().size());
219208

@@ -238,13 +227,10 @@ public void shouldRejectWhenManifestIsTooStale() {
238227
options.setMaxStaleDays(0);
239228
ValidationResult result = ValidationResult.withLocation(ROOT_SIA_MANIFEST_RSYNC_LOCATION);
240229

241-
expect(crlLocator.getCrl(ROOT_MANIFEST_CRL_LOCATION, context, result)).andReturn(crl);
242-
replay(crlLocator);
230+
when(crlLocator.getCrl(ROOT_MANIFEST_CRL_LOCATION, context, result)).thenReturn(crl);
243231

244232
subject.validate(ROOT_SIA_MANIFEST_RSYNC_LOCATION.toString(), context, crlLocator, options, result);
245233

246-
verify(crlLocator);
247-
248234
assertTrue(result.hasFailures());
249235

250236
assertEquals(
@@ -270,13 +256,10 @@ public void shouldWarnAboutInconsistentValidityTimes() {
270256
ValidationResult result = ValidationResult.withLocation(ROOT_SIA_MANIFEST_RSYNC_LOCATION);
271257
result.setLocation(new ValidationLocation(ROOT_SIA_MANIFEST_RSYNC_LOCATION));
272258

273-
expect(crlLocator.getCrl(ROOT_MANIFEST_CRL_LOCATION, context, result)).andReturn(crl);
274-
replay(crlLocator);
259+
when(crlLocator.getCrl(ROOT_MANIFEST_CRL_LOCATION, context, result)).thenReturn(crl);
275260

276261
mft.validate(ROOT_SIA_MANIFEST_RSYNC_LOCATION.toString(), context, crlLocator, VALIDATION_OPTIONS, result);
277262

278-
verify(crlLocator);
279-
280263
assertEquals(0, result.getFailuresForCurrentLocation().size());
281264
assertFalse(result.hasFailures());
282265

src/test/java/net/ripe/rpki/commons/crypto/crl/X509CrlTest.java

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
import static net.ripe.rpki.commons.crypto.util.KeyPairFactoryTest.TEST_KEY_PAIR;
4848
import static net.ripe.rpki.commons.crypto.x509cert.X509CertificateBuilderHelper.DEFAULT_SIGNATURE_PROVIDER;
4949
import static net.ripe.rpki.commons.crypto.x509cert.X509ResourceCertificateTest.createSelfSignedCaResourceCertificate;
50-
import static org.easymock.EasyMock.*;
50+
import static org.mockito.Mockito.*;
5151
import static org.junit.Assert.*;
5252

5353
public class X509CrlTest {
@@ -90,33 +90,25 @@ public void shouldHaveAuthorityKeyIdentifier() {
9090
public void shouldValidateCrl() {
9191
X509Crl subject = createCrl();
9292
ValidationResult result = ValidationResult.withLocation(ROOT_MANIFEST_CRL_LOCATION);
93-
CrlLocator crlLocator = createMock(CrlLocator.class);
93+
CrlLocator crlLocator = mock(CrlLocator.class);
9494

9595
CertificateRepositoryObjectValidationContext context = new CertificateRepositoryObjectValidationContext(ROOT_MANIFEST_CRL_LOCATION, createSelfSignedCaResourceCertificate());
9696

97-
replay(crlLocator);
98-
9997
subject.validate(ROOT_MANIFEST_CRL_LOCATION.toString(), context, crlLocator, VALIDATION_OPTIONS, result);
10098

101-
verify(crlLocator);
102-
10399
assertFalse(result.hasFailures());
104100
}
105101

106102
@Test
107103
public void shouldNotValidateInvalidCrl() {
108104
X509Crl subject = getCrlWithKeyPair(SECOND_TEST_KEY_PAIR);
109105
ValidationResult result = ValidationResult.withLocation(ROOT_MANIFEST_CRL_LOCATION);
110-
CrlLocator crlLocator = createMock(CrlLocator.class);
106+
CrlLocator crlLocator = mock(CrlLocator.class);
111107

112108
CertificateRepositoryObjectValidationContext context = new CertificateRepositoryObjectValidationContext(ROOT_MANIFEST_CRL_LOCATION, createSelfSignedCaResourceCertificate());
113109

114-
replay(crlLocator);
115-
116110
subject.validate(ROOT_MANIFEST_CRL_LOCATION.toString(), context, crlLocator, VALIDATION_OPTIONS, result);
117111

118-
verify(crlLocator);
119-
120112
assertTrue(result.hasFailures());
121113
assertTrue(result.getValidatedLocations().size() == 1);
122114
ValidationLocation rootMftCrlValidationLocation = new ValidationLocation(ROOT_MANIFEST_CRL_LOCATION);

src/test/java/net/ripe/rpki/commons/crypto/x509cert/X509ResourceCertificateTest.java

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@
2929
*/
3030
package net.ripe.rpki.commons.crypto.x509cert;
3131

32-
import static org.easymock.EasyMock.*;
3332
import static org.junit.Assert.*;
34-
33+
import static org.mockito.Mockito.*;
34+
import javax.security.auth.x500.X500Principal;
3535
import java.math.BigInteger;
3636
import java.net.URI;
3737
import java.net.URISyntaxException;
@@ -42,8 +42,6 @@
4242
import java.security.SignatureException;
4343
import java.security.cert.CertificateException;
4444
import java.util.EnumSet;
45-
import javax.security.auth.x500.X500Principal;
46-
4745
import net.ripe.ipresource.IpResourceSet;
4846
import net.ripe.ipresource.IpResourceType;
4947
import net.ripe.rpki.commons.crypto.ValidityPeriod;
@@ -57,10 +55,11 @@
5755
import net.ripe.rpki.commons.validation.ValidationString;
5856
import net.ripe.rpki.commons.validation.objectvalidators.CertificateRepositoryObjectValidationContext;
5957
import org.bouncycastle.asn1.x509.KeyUsage;
60-
import org.easymock.IAnswer;
6158
import org.joda.time.DateTime;
6259
import org.junit.Before;
6360
import org.junit.Test;
61+
import org.mockito.invocation.InvocationOnMock;
62+
import org.mockito.stubbing.Answer;
6463

6564

6665
public class X509ResourceCertificateTest {
@@ -137,7 +136,7 @@ public static X509ResourceCertificateBuilder createSelfSignedEeCertificateBuilde
137136

138137
@Before
139138
public void setUp() {
140-
crlLocator = createMock(CrlLocator.class);
139+
crlLocator = mock(CrlLocator.class);
141140
}
142141

143142
@Test(expected = IllegalArgumentException.class)
@@ -267,11 +266,8 @@ public void shouldIgnoreCrlWhenValidatingRootCertificate() {
267266
ValidationResult result = ValidationResult.withLocation(CERT_URI);
268267
X509ResourceCertificate selfSignedCert = createSelfSignedCaResourceCertificate(TEST_RESOURCE_SET);
269268
CertificateRepositoryObjectValidationContext context = new CertificateRepositoryObjectValidationContext(CERT_URI, selfSignedCert);
270-
replay(crlLocator);
271269

272270
selfSignedCert.validate(CERT_URI.toString(), context, crlLocator, VALIDATION_OPTIONS, result);
273-
274-
verify(crlLocator);
275271
}
276272

277273
@Test
@@ -285,21 +281,18 @@ public void shouldFailWhenCrlCannotBeLocated() {
285281
.build();
286282
CertificateRepositoryObjectValidationContext context = new CertificateRepositoryObjectValidationContext(CERT_URI, rootCertificate);
287283

288-
expect(crlLocator.getCrl(CRL_DP, context, result)).andAnswer(new IAnswer<X509Crl>() {
284+
when(crlLocator.getCrl(CRL_DP, context, result)).thenAnswer(new Answer<X509Crl>() {
289285
@Override
290-
public X509Crl answer() throws Throwable {
291-
286+
public X509Crl answer(InvocationOnMock invocationOnMock) throws Throwable {
292287
assertEquals(CRL_DP_VALIDATION_LOCATION, result.getCurrentLocation());
293288
result.rejectIfFalse(false, ValidationString.CRL_SIGNATURE_VALID);
294289
return null;
295290
}
296291
});
297-
replay(crlLocator);
298292

299293
result.setLocation(new ValidationLocation(CERT_URI));
300294
subject.validate(CERT_URI.toString(), context, crlLocator, VALIDATION_OPTIONS, result);
301295

302-
verify(crlLocator);
303296
assertEquals(CERT_URI_VALIDATION_LOCATION, result.getCurrentLocation());
304297
assertTrue("certificate should have errors", result.hasFailureForCurrentLocation());
305298
assertTrue("crl should have errors", result.hasFailureForLocation(CRL_DP_VALIDATION_LOCATION));
@@ -317,12 +310,10 @@ public void shouldValidateWhenCrlOk() {
317310
X509Crl crl = X509CrlTest.createCrl();
318311
CertificateRepositoryObjectValidationContext context = new CertificateRepositoryObjectValidationContext(CERT_URI, rootCertificate);
319312

320-
expect(crlLocator.getCrl(CRL_DP, context, result)).andReturn(crl);
321-
replay(crlLocator);
313+
when(crlLocator.getCrl(CRL_DP, context, result)).thenReturn(crl);
322314

323315
subject.validate(CERT_URI.toString(), context, crlLocator, VALIDATION_OPTIONS, result);
324316

325-
verify(crlLocator);
326317
assertEquals(CERT_URI_VALIDATION_LOCATION, result.getCurrentLocation());
327318
assertEquals("[]", result.getFailuresForCurrentLocation().toString());
328319
assertFalse(result.hasFailureForLocation(CERT_URI_VALIDATION_LOCATION));

src/test/java/net/ripe/rpki/commons/provisioning/cms/ProvisioningCmsObjectTest.java

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -30,23 +30,21 @@
3030
package net.ripe.rpki.commons.provisioning.cms;
3131

3232

33-
import static org.easymock.EasyMock.*;
33+
import static org.mockito.Mockito.*;
3434
import static org.junit.Assert.*;
3535

3636
import java.security.cert.X509CRL;
3737
import java.security.cert.X509Certificate;
3838
import java.util.Collections;
3939

40-
import net.ripe.rpki.commons.provisioning.cms.ProvisioningCmsObject;
4140
import org.junit.Test;
4241

4342
public class ProvisioningCmsObjectTest {
4443

45-
4644
@Test
4745
public void shouldImplementEquals() {
48-
X509Certificate certificate1 = createMock(X509Certificate.class);
49-
X509CRL crl = createMock(X509CRL.class);
46+
X509Certificate certificate1 = mock(X509Certificate.class);
47+
X509CRL crl = mock(X509CRL.class);
5048
byte[] encodedContent = new byte[]{'f', 'o', 'o'};
5149
ProvisioningCmsObject cms1 = new ProvisioningCmsObject(encodedContent, certificate1, Collections.<X509Certificate>emptySet(), crl, null);
5250

@@ -57,9 +55,9 @@ public void shouldImplementEquals() {
5755

5856
@Test
5957
public void shouldCompareOnlyTheContentForEquality() {
60-
X509Certificate certificate1 = createMock(X509Certificate.class);
61-
X509Certificate certificate2 = createMock(X509Certificate.class);
62-
X509CRL crl = createMock(X509CRL.class);
58+
X509Certificate certificate1 = mock(X509Certificate.class);
59+
X509Certificate certificate2 = mock(X509Certificate.class);
60+
X509CRL crl = mock(X509CRL.class);
6361

6462
byte[] encodedContent = new byte[]{'f', 'o', 'o'};
6563

@@ -71,9 +69,9 @@ public void shouldCompareOnlyTheContentForEquality() {
7169

7270
@Test
7371
public void shouldUseOnlyTheContentForHashcode() {
74-
X509Certificate certificate1 = createMock(X509Certificate.class);
75-
X509Certificate certificate2 = createMock(X509Certificate.class);
76-
X509CRL crl = createMock(X509CRL.class);
72+
X509Certificate certificate1 = mock(X509Certificate.class);
73+
X509Certificate certificate2 = mock(X509Certificate.class);
74+
X509CRL crl = mock(X509CRL.class);
7775

7876
byte[] encodedContent = new byte[]{'f', 'o', 'o'};
7977

0 commit comments

Comments
 (0)