Search in sources :

Example 1 with ManagedZonesListResponse

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

the class DnsBatchTest method testListZonesWithOptions.

@Test
public void testListZonesWithOptions() {
    EasyMock.reset(batchMock);
    Capture<RpcBatch.Callback<ManagedZonesListResponse>> callback = Capture.newInstance();
    Capture<Map<DnsRpc.Option, Object>> capturedOptions = Capture.newInstance();
    batchMock.addListZones(EasyMock.capture(callback), EasyMock.capture(capturedOptions));
    EasyMock.replay(batchMock);
    DnsBatchResult<Page<Zone>> batchResult = dnsBatch.listZones(ZONE_LIST_OPTIONS);
    assertNotNull(callback.getValue());
    Integer size = (Integer) capturedOptions.getValue().get(ZONE_LIST_OPTIONS[0].getRpcOption());
    assertEquals(MAX_SIZE, size);
    String selector = (String) capturedOptions.getValue().get(ZONE_LIST_OPTIONS[1].getRpcOption());
    assertEquals(PAGE_TOKEN, selector);
    selector = (String) capturedOptions.getValue().get(ZONE_LIST_OPTIONS[2].getRpcOption());
    assertTrue(selector.contains(Dns.ZoneField.DESCRIPTION.getSelector()));
    assertTrue(selector.contains(Dns.ZoneField.NAME.getSelector()));
    selector = (String) capturedOptions.getValue().get(ZONE_LIST_OPTIONS[3].getRpcOption());
    assertEquals(DNS_NAME, selector);
    // check the callback
    ManagedZonesListResponse response = new ManagedZonesListResponse().setManagedZones(ZONE_LIST).setNextPageToken(PAGE_TOKEN);
    RpcBatch.Callback<ManagedZonesListResponse> capturedCallback = callback.getValue();
    EasyMock.verify(optionsMock);
    EasyMock.reset(optionsMock);
    EasyMock.expect(optionsMock.getService()).andReturn(dns).times(ZONE_LIST.size());
    EasyMock.replay(optionsMock);
    capturedCallback.onSuccess(response);
    Page<Zone> page = batchResult.get();
    assertEquals(PAGE_TOKEN, page.getNextPageToken());
    Iterator<Zone> iterator = page.getValues().iterator();
    int resultSize = 0;
    EasyMock.verify(dns);
    EasyMock.reset(dns);
    EasyMock.expect(dns.getOptions()).andReturn(optionsMock).times(ZONE_LIST.size() + 1);
    EasyMock.replay(dns);
    Zone zoneInfoFunctional = new Zone(dns, new ZoneInfo.BuilderImpl(ZONE_INFO));
    while (iterator.hasNext()) {
        assertEquals(zoneInfoFunctional, iterator.next());
        resultSize++;
    }
    assertEquals(ZONE_LIST.size(), resultSize);
}
Also used : ManagedZone(com.google.api.services.dns.model.ManagedZone) Page(com.google.api.gax.paging.Page) RpcBatch(com.google.cloud.dns.spi.v1.RpcBatch) ManagedZonesListResponse(com.google.api.services.dns.model.ManagedZonesListResponse) 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 ManagedZone (com.google.api.services.dns.model.ManagedZone)1 ManagedZonesListResponse (com.google.api.services.dns.model.ManagedZonesListResponse)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