public void testListDiskOfferings() throws Exception { Set<DiskOffering> response = client.getOfferingApi().listDiskOfferings(); assert null != response; long offeringCount = response.size(); assertTrue(offeringCount >= 0); for (DiskOffering offering : response) { try { DiskOffering newDetails = Iterables.getOnlyElement(client.getOfferingApi().listDiskOfferings( ListDiskOfferingsOptions.Builder.id(offering.getId()))); assertEquals(offering, newDetails); assertEquals(offering, client.getOfferingApi().getDiskOffering(offering.getId())); assert offering.getId() != null : offering; assert offering.getName() != null : offering; assert offering.getCreated() != null : offering; assert offering.getDisplayText() != null : offering; assert offering.getDiskSize() > 0 || (offering.getDiskSize() == 0 && offering.isCustomized()) : offering; assert offering.getTags() != null : offering; } catch (NoSuchElementException e) { // This bug is present both in 2.2.8 and 2.2.12 assertTrue(Predicates.in(ImmutableSet.of("2.2.8", "2.2.12")).apply(apiVersion)); } } }