Fix dual build: switch to EasyMock + fix NPE
Cannot get dual build to work with mockito -- switch to EasyMock.
Discovered NullPointerException while testing change -- fixed.
Change-Id: I1fc9da05b83258e9761e8e348c9e17e53aa57788
diff --git a/BUILD b/BUILD
index 77d9d09..43871b1 100644
--- a/BUILD
+++ b/BUILD
@@ -57,9 +57,7 @@
TEST_DEPS = PLUGIN_DEPS + PLUGIN_TEST_DEPS + [
":copyright_scanner",
- "//lib/mockito",
"@guava//jar",
- "@mockito//jar",
]
java_library(
diff --git a/WORKSPACE b/WORKSPACE
index c8ab81d..d752151 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -66,30 +66,3 @@
artifact = "com.google.j2objc:j2objc-annotations:1.1",
sha1 = "ed28ded51a8b1c6b112568def5f4b455e6809019",
)
-
-maven_jar(
- name = "mockito",
- artifact = "org.mockito:mockito-core:2.24.0",
- sha1 = "969a7bcb6f16e076904336ebc7ca171d412cc1f9",
-)
-
-BYTE_BUDDY_VERSION = "1.9.7"
-
-maven_jar(
- name = "byte-buddy",
- artifact = "net.bytebuddy:byte-buddy:" + BYTE_BUDDY_VERSION,
- sha1 = "8fea78fea6449e1738b675cb155ce8422661e237",
-)
-
-maven_jar(
- name = "byte-buddy-agent",
- artifact = "net.bytebuddy:byte-buddy-agent:" + BYTE_BUDDY_VERSION,
- sha1 = "8e7d1b599f4943851ffea125fd9780e572727fc0",
-)
-
-maven_jar(
- name = "objenesis",
- artifact = "org.objenesis:objenesis:2.6",
- sha1 = "639033469776fd37c08358c6b92a4761feb2af4b",
-)
-
diff --git a/lib/mockito/BUILD b/lib/mockito/BUILD
deleted file mode 100644
index 89a1400..0000000
--- a/lib/mockito/BUILD
+++ /dev/null
@@ -1,34 +0,0 @@
-package(
- default_testonly = True,
- default_visibility = ["//visibility:public"],
-)
-
-java_library(
- name = "mockito",
- data = ["//lib:LICENSE-Apache2.0"],
- # Only exposed for plugin tests; core tests should use Easymock
- exports = ["@mockito//jar"],
- runtime_deps = [
- ":byte-buddy",
- ":byte-buddy-agent",
- ":objenesis",
- ],
-)
-
-java_library(
- name = "byte-buddy",
- data = ["//lib:LICENSE-Apache2.0"],
- exports = ["@byte-buddy//jar"],
-)
-
-java_library(
- name = "byte-buddy-agent",
- data = ["//lib:LICENSE-Apache2.0"],
- exports = ["@byte-buddy-agent//jar"],
-)
-
-java_library(
- name = "objenesis",
- data = ["//lib:LICENSE-Apache2.0"],
- exports = ["@objenesis//jar"],
-)
diff --git a/src/main/java/com/googlesource/gerrit/plugins/copyright/CopyrightValidator.java b/src/main/java/com/googlesource/gerrit/plugins/copyright/CopyrightValidator.java
index cda88ce..f17ed95 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/copyright/CopyrightValidator.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/copyright/CopyrightValidator.java
@@ -281,17 +281,19 @@
metrics.scanRevisionTimerByBranch.record(branch, scanTime, TimeUnit.MILLISECONDS);
ReviewResult result = reviewApi.reportScanFindings(project, scannerConfig, event, findings);
- if (result.error != null && !result.error.equals("")) {
+ if (result != null && result.error != null && !result.error.equals("")) {
logger.atSevere().log(
"%s plugin revision %s: error posting review: %s",
pluginName, event.getChange().currentRevision, result.error);
}
- for (Map.Entry<String, AddReviewerResult> entry : result.reviewers.entrySet()) {
- AddReviewerResult arr = entry.getValue();
- if (arr.error != null && !arr.error.equals("")) {
- logger.atSevere().log(
- "%s plugin revision %s: error adding reviewer %s: %s",
- pluginName, event.getChange().currentRevision, entry.getKey(), arr.error);
+ if (result != null && result.reviewers != null) {
+ for (Map.Entry<String, AddReviewerResult> entry : result.reviewers.entrySet()) {
+ AddReviewerResult arr = entry.getValue();
+ if (arr.error != null && !arr.error.equals("")) {
+ logger.atSevere().log(
+ "%s plugin revision %s: error adding reviewer %s: %s",
+ pluginName, event.getChange().currentRevision, entry.getKey(), arr.error);
+ }
}
}
}
diff --git a/src/test/java/com/googlesource/gerrit/plugins/copyright/CopyrightReviewApiTest.java b/src/test/java/com/googlesource/gerrit/plugins/copyright/CopyrightReviewApiTest.java
index 2c1cda7..f71ea0f 100644
--- a/src/test/java/com/googlesource/gerrit/plugins/copyright/CopyrightReviewApiTest.java
+++ b/src/test/java/com/googlesource/gerrit/plugins/copyright/CopyrightReviewApiTest.java
@@ -21,11 +21,12 @@
import static com.googlesource.gerrit.plugins.copyright.lib.CopyrightScanner.PartyType.FORBIDDEN;
import static com.googlesource.gerrit.plugins.copyright.lib.CopyrightScanner.PartyType.THIRD_PARTY;
import static com.googlesource.gerrit.plugins.copyright.lib.CopyrightScanner.PartyType.UNKNOWN;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.times;
-import static org.mockito.Mockito.verify;
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.eq;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
import com.google.common.collect.ImmutableList;
import com.google.common.truth.Correspondence;
@@ -42,15 +43,15 @@
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.junit.runners.JUnit4;
-@RunWith(MockitoJUnitRunner.class)
+@RunWith(JUnit4.class)
public class CopyrightReviewApiTest {
private static final PluginUser pluginUser = new FakePluginUser();
private static final CurrentUser currentUser = new FakeCurrentUser();
- @Mock private IdentifiedUser.GenericFactory identifiedUserFactory;
+ private IdentifiedUser.GenericFactory identifiedUserFactory =
+ createMock(IdentifiedUser.GenericFactory.class);
private CopyrightReviewApi reviewApi;
@@ -71,16 +72,24 @@
@Test
public void testGetSendingUser_fromAccountIdConfigured() throws Exception {
+ expect(
+ identifiedUserFactory.runAs(
+ eq(null), anyObject(Account.Id.class), anyObject(PluginUser.class)))
+ .andReturn(null);
+ replay(identifiedUserFactory);
+
CurrentUser from = reviewApi.getSendingUser(808);
- verify(identifiedUserFactory, times(1))
- .runAs(eq(null), any(Account.Id.class), any(PluginUser.class));
+
+ verify(identifiedUserFactory);
}
@Test
public void testGetSendingUser_noFromAccountIdConfigured() throws Exception {
+ replay(identifiedUserFactory);
+
CurrentUser from = reviewApi.getSendingUser(0);
- verify(identifiedUserFactory, never())
- .runAs(eq(null), any(Account.Id.class), any(PluginUser.class));
+
+ verify(identifiedUserFactory);
assertThat(from).isSameAs(currentUser);
}