public T prices(ProductItemPrice... in) { return prices(ImmutableSet.copyOf(in)); }
public T prices(ProductItemPrice... in) { return prices(ImmutableSet.copyOf(in)); }
@Test public void testPriceMultiplePrices() { ImmutableSet<ProductItemPrice> prices = ImmutableSet.of(price, ProductItemPrice.builder().id(2).build()); ProductItem item2 = ProductItem.builder().prices(prices).build(); assertEquals(price().apply(item2),price); }
@BeforeMethod public void setup() { toHardware = Guice.createInjector(new AbstractModule() { @Override protected void configure() { bindProperties(binder(), new SoftLayerProviderMetadata().getDefaultProperties()); } }).getInstance(ProductItemsToHardware.class); cpuItem = ProductItem.builder() .id(1) .description("2 x 2.0 GHz Cores") .capacity(2F) .categories(ProductItemCategory.builder().categoryCode("guest_core").build()) .prices(ProductItemPrice.builder().id(123).build()) .build(); ramItem = ProductItem.builder().id(2).description("2GB ram").capacity(2F).categories( ProductItemCategory.builder().categoryCode("ram").build()).prices( ProductItemPrice.builder().id(456).build()).build(); volumeItem = ProductItem.builder().id(3).description("100 GB (SAN)").capacity(100F).prices( ProductItemPrice.builder().id(789).build()).categories( ProductItemCategory.builder().categoryCode("guest_disk0").build()).build(); }
@Test public void testHardwareWithTwoDisks() { ProductItem localVolumeItem = ProductItem.builder().id(4).description("25 GB").capacity(25F).prices( ProductItemPrice.builder().id(987).build()).categories( ProductItemCategory.builder().categoryCode("guest_disk1").build()).build(); Hardware hardware = toHardware.apply(ImmutableSet.of(cpuItem, ramItem, volumeItem,localVolumeItem)); List<? extends Volume> volumes = hardware.getVolumes(); assertEquals(2, volumes.size()); Volume volume = volumes.get(0); assertEquals(100F, volume.getSize()); assertEquals(Volume.Type.SAN, volume.getType()); assertEquals(true, volume.isBootDevice()); Volume volume1 = volumes.get(1); assertEquals(25F, volume1.getSize()); assertEquals(Volume.Type.LOCAL, volume1.getType()); assertEquals(false, volume1.isBootDevice()); } }
@Test public void testConversion() { for( String description : operatingSystems ) { ProductItem item = ProductItem.builder() .description(description) .prices(ProductItemPrice.builder().id(1234).build()) .build(); Image i = new ProductItemToImage().apply(item); OperatingSystem os = i.getOperatingSystem(); assertNotNull(os); assertNotNull(os.getFamily()); assertFalse(os.getFamily().equals(OsFamily.UNRECOGNIZED)); assertNotNull(os.getVersion()); } }
@Test public void testCompletelyUnknown() { ProductItem item = ProductItem.builder() .description("This fails to match anything!!!") .prices(ProductItemPrice.builder().id(1234).build()) .build(); Image i = new ProductItemToImage().apply(item); OperatingSystem os = i.getOperatingSystem(); assertNotNull(os); assertEquals(OsFamily.UNRECOGNIZED, os.getFamily()); assertNull(os.getVersion()); assertFalse(os.is64Bit()); }
@Test public void testUbuntu() { ProductItem item = ProductItem.builder() .description("Ubuntu Linux 10.04 LTS Lucid Lynx - Minimal Install (64 bit)") .prices(ProductItemPrice.builder().id(1234).build()) .build(); Image i = new ProductItemToImage().apply(item); OperatingSystem os = i.getOperatingSystem(); assertNotNull(os); assertEquals(OsFamily.UBUNTU, os.getFamily()); assertEquals("10.04",os.getVersion()); assertTrue(os.is64Bit()); }
public T fromProductItem(ProductItem in) { return this .id(in.getId()) .description(in.getDescription()) .units(in.getUnits()) .capacity(in.getCapacity()) .prices(in.getPrices()) .categories(in.getCategories()); } }
@Test public void test64BitUnknown() { ProductItem item = ProductItem.builder() .description("This only has the bit-count (64 bit)") .prices(ProductItemPrice.builder().id(1234).build()) .build(); Image i = new ProductItemToImage().apply(item); OperatingSystem os = i.getOperatingSystem(); assertNotNull(os); assertEquals(OsFamily.UNRECOGNIZED, os.getFamily()); assertNull(os.getVersion()); assertTrue(os.is64Bit()); }
@Test public void testUbuntuNoBitCount() { ProductItem item = ProductItem.builder() .description("Ubuntu Linux 10.04 LTS Lucid Lynx - Minimal Install") .prices(ProductItemPrice.builder().id(1234).build()) .build(); Image i = new ProductItemToImage().apply(item); OperatingSystem os = i.getOperatingSystem(); assertNotNull(os); assertEquals(OsFamily.UBUNTU, os.getFamily()); assertEquals("10.04",os.getVersion()); assertFalse(os.is64Bit()); }
@Test public void testIdManyPrices() { ProductItemPrice price1 = ProductItemPrice.builder().id(1234).build(); ProductItemPrice price2 = ProductItemPrice.builder().id(5678).build(); ProductItem item = ProductItem.builder().prices(ImmutableSet.of(price1,price2)).build(); assertEquals("1234",imageId().apply(item)); }
@Test public void testId() { ProductItemPrice price = ProductItemPrice.builder().id(1234).build(); ProductItem item = ProductItem.builder().prices(price).build(); assertEquals("1234",imageId().apply(item)); }
@BeforeMethod public void setup() { category = ProductItemCategory.builder().id(1).categoryCode("category").build(); price = ProductItemPrice.builder().id(1).build(); item = ProductItem.builder().id(1) .capacity(2.0f) .description("an item") .prices(price) .build(); }
public T fromProductItem(ProductItem in) { return this .id(in.getId()) .description(in.getDescription()) .units(in.getUnits()) .capacity(in.getCapacity()) .prices(in.getPrices()) .categories(in.getCategories()); } }
@Test(expectedExceptions = NullPointerException.class) public void testNoDescription() { ProductItem item = ProductItem.builder() .prices(ProductItemPrice.builder().id(1234).build()) .build(); new ProductItemToImage().apply(item); }
@Test public void testHardwareId() { ProductItem item1 = ProductItem.builder().prices(ProductItemPrice.builder().id(123).build()).build(); ProductItem item2 = ProductItem.builder().prices(ProductItemPrice.builder().id(456).build()).build(); ProductItem item3 = ProductItem.builder().prices(ProductItemPrice.builder().id(789).build()).build(); String id = hardwareId().apply(ImmutableList.of(item1, item2, item3)); assertEquals("123,456,789", id); }