public void testRetrieveDisplayInformation_whenNull() throws Exception {
    MetadataStubExt mockMetadataStub = mock(MetadataStubExt.class);
    when(mockMetadataStub.getServerName()).thenReturn("test-end-point-server");

    RetrieveResultAdapter retrieveResult =
        new RetrieveResultAdapter(mock(AsyncResult.class), mockMetadataStub);
    assertEquals(
        "Polling server test-end-point-server for response",
        retrieveResult.retrieveRealTimeStatusUpdatesIfAny());
  }
  public void testRetrieveDisplayInformation_whenNotNull() throws Exception {
    MetadataStubExt mockMetadataStub = mock(MetadataStubExt.class);
    RetrieveResult mockRetrieveResult = mock(RetrieveResult.class);
    AsyncResult mockAsyncResult = mock(AsyncResult.class);

    when(mockAsyncResult.getId()).thenReturn("");
    when(mockRetrieveResult.getStatus()).thenReturn(RetrieveStatus.InProgress);
    when(mockMetadataStub.checkRetrieveStatus(anyString())).thenReturn(mockRetrieveResult);

    RetrieveResultAdapter retrieveResultAdapter =
        new RetrieveResultAdapter(mockAsyncResult, mockMetadataStub);
    retrieveResultAdapter.checkStatus();

    verify(mockAsyncResult, times(1)).getId();
    assertTrue(
        retrieveResultAdapter
            .retrieveRealTimeStatusUpdatesIfAny()
            .contains("Request status: InProgress"));
  }