Add tests for `maniphestSearch` Change-Id: I97a710b18e4b7d4136f37b3c199125b757b3b019
diff --git a/src/test/java/com/googlesource/gerrit/plugins/its/phabricator/conduit/ConduitTest.java b/src/test/java/com/googlesource/gerrit/plugins/its/phabricator/conduit/ConduitTest.java index 898dbf5..608c510 100644 --- a/src/test/java/com/googlesource/gerrit/plugins/its/phabricator/conduit/ConduitTest.java +++ b/src/test/java/com/googlesource/gerrit/plugins/its/phabricator/conduit/ConduitTest.java
@@ -32,6 +32,7 @@ import com.googlesource.gerrit.plugins.its.base.testutil.LoggingMockingTestCase; import com.googlesource.gerrit.plugins.its.phabricator.conduit.results.ConduitPing; import com.googlesource.gerrit.plugins.its.phabricator.conduit.results.ManiphestEdit; +import com.googlesource.gerrit.plugins.its.phabricator.conduit.results.ManiphestSearch; import com.googlesource.gerrit.plugins.its.phabricator.conduit.results.ProjectSearch; import java.util.HashMap; import java.util.Map; @@ -256,6 +257,43 @@ assertThat(actual.getTransactions().get(2).getPhid()).isEqualTo("trans@2"); } + @Test + public void testManiphestSearchNotFound() throws Exception { + Map<String, Object> params = new HashMap<>(); + params.put("constraints", ImmutableMap.of("ids", ImmutableList.of(4711))); + + JsonObject result = new JsonObject(); + result.add("data", new JsonArray()); + + when(conduitConnection.call("maniphest.search", params, TOKEN)).thenReturn(result); + Conduit conduit = createConduit(); + + verifyNoMoreInteractions(conduitConnection); + ManiphestSearch actual = conduit.maniphestSearch(4711); + assertThat(actual).isNull(); + } + + @Test + public void testManiphestSearchPass() throws Exception { + Map<String, Object> params = new HashMap<>(); + params.put("constraints", ImmutableMap.of("ids", ImmutableList.of(4711))); + + JsonObject needle = new JsonObject(); + needle.addProperty("id", 23); + + JsonArray data = new JsonArray(); + data.add(needle); + + JsonObject result = new JsonObject(); + result.add("data", data); + + when(conduitConnection.call("maniphest.search", params, TOKEN)).thenReturn(result); + Conduit conduit = createConduit(); + + ManiphestSearch actual = conduit.maniphestSearch(4711); + assertThat(actual.getId()).isEqualTo(23); + } + private JsonObject createEditResponse(int transactions) { JsonObject resultObject = new JsonObject(); resultObject.addProperty("id", 4712);