{
FindFolderType findFolder =
FindFolderHelper.getFindFoldersRequest(DistinguishedFolderIdNameType.MSGFOLDERROOT);
FindFolderResponseType findFolderResponse = mock(FindFolderResponseType.class);
ArrayOfResponseMessagesType findFolderArrayOfResponseMessages = mock(ArrayOfResponseMessagesType.class);
FindFolderResponseMessageType findFolderResponseMessage = mock(FindFolderResponseMessageType.class);
FindFolderParentType findFolderParent = mock(FindFolderParentType.class);
ArrayOfFoldersType arrayOfFolders = mock(ArrayOfFoldersType.class);
when(findFolderParent.getFolders()).thenReturn(arrayOfFolders);
when(service.findFolder(likeThis(findFolder), eq(user))).thenReturn(findFolderResponse);
when(findFolderResponse.getResponseMessages()).thenReturn(findFolderArrayOfResponseMessages);
when(findFolderArrayOfResponseMessages.getFindFolderResponseMessageArray())
.thenReturn(new FindFolderResponseMessageType[]{findFolderResponseMessage});
when(findFolderResponseMessage.getResponseCode()).thenReturn(ResponseCodeType.NO_ERROR);
when(findFolderResponseMessage.isSetRootFolder()).thenReturn(true);
when(findFolderResponseMessage.getRootFolder()).thenReturn(findFolderParent);
when(findFolderParent.isSetFolders()).thenReturn(true);
when(findFolderParent.getFolders()).thenReturn(arrayOfFolders);
when(arrayOfFolders.getFolderArray()).thenReturn(folders);
}