@Override public void run(Compute compute, Void arg) { for (Image image : compute.listImages().iterateAll()) { System.out.println(image); } } }
@Test public void testListEmptyImagesForProject() { compute = options.getService(); ImmutableList<com.google.api.services.compute.model.Image> images = ImmutableList.of(); Tuple<String, Iterable<com.google.api.services.compute.model.Image>> result = Tuple.<String, Iterable<com.google.api.services.compute.model.Image>>of(null, images); EasyMock.expect(computeRpcMock.listImages("otherProject", EMPTY_RPC_OPTIONS)).andReturn(result); EasyMock.replay(computeRpcMock); Page<Image> page = compute.listImages("otherProject"); assertNull(page.getNextPageToken()); assertArrayEquals(images.toArray(), Iterables.toArray(page.getValues(), Image.class)); }
@Test public void testListEmptyImages() { compute = options.getService(); ImmutableList<com.google.api.services.compute.model.Image> images = ImmutableList.of(); Tuple<String, Iterable<com.google.api.services.compute.model.Image>> result = Tuple.<String, Iterable<com.google.api.services.compute.model.Image>>of(null, images); EasyMock.expect(computeRpcMock.listImages(PROJECT, EMPTY_RPC_OPTIONS)).andReturn(result); EasyMock.replay(computeRpcMock); Page<Image> page = compute.listImages(); assertNull(page.getNextPageToken()); assertArrayEquals(images.toArray(), Iterables.toArray(page.getValues(), Image.class)); }
@Test public void testListImagesWithOptions() { String cursor = "cursor"; compute = options.getService(); ImmutableList<Image> imageList = ImmutableList.of( new Image(compute, new ImageInfo.BuilderImpl(IMAGE)), new Image(compute, new ImageInfo.BuilderImpl(IMAGE))); Tuple<String, Iterable<com.google.api.services.compute.model.Image>> result = Tuple.of(cursor, Iterables.transform(imageList, ImageInfo.TO_PB_FUNCTION)); EasyMock.expect(computeRpcMock.listImages(PROJECT, IMAGE_LIST_OPTIONS)).andReturn(result); EasyMock.replay(computeRpcMock); Page<Image> page = compute.listImages(IMAGE_LIST_PAGE_SIZE, IMAGE_LIST_PAGE_TOKEN, IMAGE_LIST_FILTER); assertEquals(cursor, page.getNextPageToken()); assertArrayEquals(imageList.toArray(), Iterables.toArray(page.getValues(), Image.class)); }
@Test public void testListImages() { String cursor = "cursor"; compute = options.getService(); ImmutableList<Image> imageList = ImmutableList.of( new Image(compute, new ImageInfo.BuilderImpl(IMAGE)), new Image(compute, new ImageInfo.BuilderImpl(IMAGE))); Tuple<String, Iterable<com.google.api.services.compute.model.Image>> result = Tuple.of(cursor, Iterables.transform(imageList, ImageInfo.TO_PB_FUNCTION)); EasyMock.expect(computeRpcMock.listImages(PROJECT, EMPTY_RPC_OPTIONS)).andReturn(result); EasyMock.replay(computeRpcMock); Page<Image> page = compute.listImages(); assertEquals(cursor, page.getNextPageToken()); assertArrayEquals(imageList.toArray(), Iterables.toArray(page.getValues(), Image.class)); }
@Test public void testListImagesForProject() { String cursor = "cursor"; compute = options.getService(); ImmutableList<Image> imageList = ImmutableList.of( new Image(compute, new ImageInfo.BuilderImpl(IMAGE)), new Image(compute, new ImageInfo.BuilderImpl(IMAGE))); Tuple<String, Iterable<com.google.api.services.compute.model.Image>> result = Tuple.of(cursor, Iterables.transform(imageList, ImageInfo.TO_PB_FUNCTION)); EasyMock.expect(computeRpcMock.listImages("otherProject", EMPTY_RPC_OPTIONS)).andReturn(result); EasyMock.replay(computeRpcMock); Page<Image> page = compute.listImages("otherProject"); assertEquals(cursor, page.getNextPageToken()); assertArrayEquals(imageList.toArray(), Iterables.toArray(page.getValues(), Image.class)); }
@Test public void testListImagesForProjectWithOptions() { String cursor = "cursor"; compute = options.getService(); ImmutableList<Image> imageList = ImmutableList.of( new Image(compute, new ImageInfo.BuilderImpl(IMAGE)), new Image(compute, new ImageInfo.BuilderImpl(IMAGE))); Tuple<String, Iterable<com.google.api.services.compute.model.Image>> result = Tuple.of(cursor, Iterables.transform(imageList, ImageInfo.TO_PB_FUNCTION)); EasyMock.expect(computeRpcMock.listImages("other", IMAGE_LIST_OPTIONS)).andReturn(result); EasyMock.replay(computeRpcMock); Page<Image> page = compute.listImages("other", IMAGE_LIST_PAGE_SIZE, IMAGE_LIST_PAGE_TOKEN, IMAGE_LIST_FILTER); assertEquals(cursor, page.getNextPageToken()); assertArrayEquals(imageList.toArray(), Iterables.toArray(page.getValues(), Image.class)); }
@Test public void testListImagesNextPage() { String cursor = "cursor"; String nextCursor = "nextCursor"; compute = options.getService(); ImmutableList<Image> imageList = ImmutableList.of( new Image(compute, new ImageInfo.BuilderImpl(IMAGE)), new Image(compute, new ImageInfo.BuilderImpl(IMAGE))); ImmutableList<Image> nextImageList = ImmutableList.of(new Image(compute, new ImageInfo.BuilderImpl(IMAGE))); Tuple<String, Iterable<com.google.api.services.compute.model.Image>> result = Tuple.of(cursor, Iterables.transform(imageList, ImageInfo.TO_PB_FUNCTION)); Tuple<String, Iterable<com.google.api.services.compute.model.Image>> nextResult = Tuple.of(nextCursor, Iterables.transform(nextImageList, ImageInfo.TO_PB_FUNCTION)); Map<ComputeRpc.Option, ?> nextOptions = ImmutableMap.of(ComputeRpc.Option.PAGE_TOKEN, cursor); EasyMock.expect(computeRpcMock.listImages(PROJECT, EMPTY_RPC_OPTIONS)).andReturn(result); EasyMock.expect(computeRpcMock.listImages(PROJECT, nextOptions)).andReturn(nextResult); EasyMock.replay(computeRpcMock); Page<Image> page = compute.listImages(); assertEquals(cursor, page.getNextPageToken()); assertArrayEquals(imageList.toArray(), Iterables.toArray(page.getValues(), Image.class)); page = page.getNextPage(); assertEquals(nextCursor, page.getNextPageToken()); assertArrayEquals(nextImageList.toArray(), Iterables.toArray(page.getValues(), Image.class)); }
@Test public void testListImages() { Page<Image> imagePage = compute.listImages(IMAGE_PROJECT); Iterator<Image> imageIterator = imagePage.iterateAll().iterator(); int count = 0; while (imageIterator.hasNext()) { count++; Image image = imageIterator.next(); assertNotNull(image.getGeneratedId()); assertNotNull(image.getImageId()); assertNotNull(image.getCreationTimestamp()); assertNotNull(image.getConfiguration()); assertNotNull(image.getStatus()); assertNotNull(image.getDiskSizeGb()); } assertTrue(count > 0); }
@Test public void testListImagesWithSelectedFields() { Page<Image> imagePage = compute.listImages(IMAGE_PROJECT, Compute.ImageListOption.fields(Compute.ImageField.ID)); Iterator<Image> imageIterator = imagePage.iterateAll().iterator(); int count = 0; while (imageIterator.hasNext()) { count++; Image image = imageIterator.next(); assertNotNull(image.getGeneratedId()); assertNotNull(image.getImageId()); assertNull(image.getCreationTimestamp()); assertNotNull(image.getConfiguration()); assertNull(image.getStatus()); assertNull(image.getDiskSizeGb()); assertNull(image.getLicenses()); assertNull(image.getDeprecationStatus()); } assertTrue(count > 0); }
@Test public void testListImagesWithFilter() { Page<Image> imagePage = compute.listImages( IMAGE_PROJECT, Compute.ImageListOption.filter( Compute.ImageFilter.equals(Compute.ImageField.ARCHIVE_SIZE_BYTES, 365056004L))); Iterator<Image> imageIterator = imagePage.iterateAll().iterator(); int count = 0; while (imageIterator.hasNext()) { count++; Image image = imageIterator.next(); assertNotNull(image.getGeneratedId()); assertNotNull(image.getImageId()); assertNotNull(image.getCreationTimestamp()); assertNotNull(image.getConfiguration()); assertNotNull(image.getStatus()); assertNotNull(image.getDiskSizeGb()); assertEquals( 365056004L, (long) image.<StorageImageConfiguration>getConfiguration().getArchiveSizeBytes()); } assertTrue(count > 0); }