@Test public void searchRemoteMessagesSynchronous_shouldQueryRemoteFolder() throws Exception { setupRemoteSearch(); controller.searchRemoteMessagesSynchronous(ACCOUNT_UUID, FOLDER_NAME, "query", reqFlags, forbiddenFlags, listener); verify(backend).search(FOLDER_NAME, "query", reqFlags, forbiddenFlags); }
@Test public void searchRemoteMessagesSynchronous_shouldNotifyOnFailure() throws Exception { setupRemoteSearch(); when(backend.search(anyString(), anyString(), nullable(Set.class), nullable(Set.class))) .thenThrow(new MessagingException("Test")); controller.searchRemoteMessagesSynchronous(ACCOUNT_UUID, FOLDER_NAME, "query", reqFlags, forbiddenFlags, listener); verify(listener).remoteSearchFailed(null, "Test"); }
@Test public void searchRemoteMessagesSynchronous_shouldNotifyOnFinish() throws Exception { setupRemoteSearch(); when(backend.search(anyString(), nullable(String.class), nullable(Set.class), nullable(Set.class))) .thenThrow(new MessagingException("Test")); controller.searchRemoteMessagesSynchronous(ACCOUNT_UUID, FOLDER_NAME, "query", reqFlags, forbiddenFlags, listener); verify(listener).remoteSearchFinished(FOLDER_NAME, 0, 50, Collections.<String>emptyList()); }
when(backend.search(eq(FOLDER_NAME), anyString(), nullable(Set.class), nullable(Set.class))) .thenReturn(remoteMessages); when(localFolder.extractNewMessages(ArgumentMatchers.<String>anyList())).thenReturn(newRemoteMessages);
List<String> messageServerIds = backend.search(folderServerId, query, requiredFlags, forbiddenFlags);