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);