Search in sources :

Example 1 with ChangesListResponse

use of com.google.api.services.dns.model.ChangesListResponse in project google-cloud-java by GoogleCloudPlatform.

the class DnsBatchTest method testListChangeRequestsWithOptions.

@Test
public void testListChangeRequestsWithOptions() {
    EasyMock.reset(batchMock);
    Capture<RpcBatch.Callback<ChangesListResponse>> callback = Capture.newInstance();
    Capture<Map<DnsRpc.Option, Object>> capturedOptions = Capture.newInstance();
    batchMock.addListChangeRequests(EasyMock.eq(ZONE_NAME), EasyMock.capture(callback), EasyMock.capture(capturedOptions));
    EasyMock.replay(batchMock);
    DnsBatchResult<Page<ChangeRequest>> batchResult = dnsBatch.listChangeRequests(ZONE_NAME, CHANGE_LIST_OPTIONS);
    assertNotNull(callback.getValue());
    Integer size = (Integer) capturedOptions.getValue().get(CHANGE_LIST_OPTIONS[0].getRpcOption());
    assertEquals(MAX_SIZE, size);
    String selector = (String) capturedOptions.getValue().get(CHANGE_LIST_OPTIONS[1].getRpcOption());
    assertEquals(PAGE_TOKEN, selector);
    selector = (String) capturedOptions.getValue().get(CHANGE_LIST_OPTIONS[2].getRpcOption());
    assertTrue(selector.contains(Dns.ChangeRequestField.STATUS.getSelector()));
    assertTrue(selector.contains(Dns.ChangeRequestField.ID.getSelector()));
    selector = (String) capturedOptions.getValue().get(CHANGE_LIST_OPTIONS[3].getRpcOption());
    assertTrue(selector.contains(Dns.SortingOrder.ASCENDING.selector()));
    // check the callback
    ChangesListResponse response = new ChangesListResponse().setChanges(CHANGE_LIST).setNextPageToken(PAGE_TOKEN);
    RpcBatch.Callback<ChangesListResponse> capturedCallback = callback.getValue();
    EasyMock.verify(optionsMock);
    EasyMock.reset(optionsMock);
    EasyMock.expect(optionsMock.getService()).andReturn(dns);
    EasyMock.replay(optionsMock);
    capturedCallback.onSuccess(response);
    Page<ChangeRequest> page = batchResult.get();
    assertEquals(PAGE_TOKEN, page.getNextPageToken());
    Iterator<ChangeRequest> iterator = page.getValues().iterator();
    int resultSize = 0;
    EasyMock.verify(dns);
    EasyMock.reset(dns);
    EasyMock.expect(dns.getOptions()).andReturn(optionsMock).times(CHANGE_LIST.size());
    EasyMock.replay(dns);
    while (iterator.hasNext()) {
        assertEquals(CHANGE_REQUEST_COMPLETE.toPb(), iterator.next().toPb());
        resultSize++;
    }
    assertEquals(CHANGE_LIST.size(), resultSize);
}
Also used : ChangesListResponse(com.google.api.services.dns.model.ChangesListResponse) Page(com.google.api.gax.paging.Page) RpcBatch(com.google.cloud.dns.spi.v1.RpcBatch) DnsRpc(com.google.cloud.dns.spi.v1.DnsRpc) Map(java.util.Map) Test(org.junit.Test)

Aggregations

Page (com.google.api.gax.paging.Page)1 ChangesListResponse (com.google.api.services.dns.model.ChangesListResponse)1 DnsRpc (com.google.cloud.dns.spi.v1.DnsRpc)1 RpcBatch (com.google.cloud.dns.spi.v1.RpcBatch)1 Map (java.util.Map)1 Test (org.junit.Test)1