use of org.candlepin.model.Product in project candlepin by candlepin.
the class ProductManagerTest method testAddContentToProduct.
@Test
public void testAddContentToProduct() {
Owner owner = this.createOwner("test-owner-1", "Test Owner 1");
Product product = this.createProduct("p1", "prod1");
Content content = this.createContent("c1", "content1", owner);
this.ownerProductCurator.mapProductToOwners(product, owner);
ProductDTO pdto = this.modelTranslator.translate(product, ProductDTO.class);
ContentDTO cdto = this.modelTranslator.translate(content, ContentDTO.class);
pdto.addContent(cdto, true);
Product output = this.productManager.updateProduct(pdto, owner, false);
assertNotEquals(product, output);
assertTrue(output.hasContent(content.getId()));
verifyZeroInteractions(this.mockEntCertGenerator);
}
use of org.candlepin.model.Product in project candlepin by candlepin.
the class ProductManagerTest method testRemoveContentFromProductForBadOwner.
@Test(expected = IllegalStateException.class)
public void testRemoveContentFromProductForBadOwner() {
Owner owner = this.createOwner("test-owner", "Test Owner");
Owner owner2 = this.createOwner("test-owner-2", "Test Owner");
Product product = TestUtil.createProduct("p1", "prod1");
Content content = TestUtil.createContent("c1");
product.addContent(content, true);
this.contentCurator.create(content);
this.productCurator.create(product);
this.ownerProductCurator.mapProductToOwner(product, owner);
this.ownerContentCurator.mapContentToOwner(content, owner);
ProductDTO pdto = this.modelTranslator.translate(product, ProductDTO.class);
boolean removed = pdto.removeContent(content.getId());
assertTrue(removed);
Product output = this.productManager.updateProduct(pdto, owner2, false);
}
use of org.candlepin.model.Product in project candlepin by candlepin.
the class ProductManagerTest method testRemoveProductWithSubscriptions.
@Test(expected = IllegalStateException.class)
public void testRemoveProductWithSubscriptions() {
long now = System.currentTimeMillis();
Owner owner = this.createOwner("test-owner", "Test Owner");
Product product = this.createProduct("p1", "prod1", owner);
Pool pool = this.createPool(owner, product, 1L, new Date(now - 86400), new Date(now + 86400));
this.productManager.removeProduct(owner, product);
}
use of org.candlepin.model.Product in project candlepin by candlepin.
the class ProductManagerTest method testUpdateProductConvergeWithExisting.
@Test
@Parameters({ "false", "true" })
public void testUpdateProductConvergeWithExisting(boolean regenCerts) {
Owner owner1 = this.createOwner("test-owner-1", "Test Owner 1");
Owner owner2 = this.createOwner("test-owner-2", "Test Owner 2");
Product product1 = this.createProduct("p1", "prod1", owner1);
Product product2 = this.createProduct("p1", "updated product", owner2);
ProductDTO update = TestUtil.createProductDTO("p1", "updated product");
assertTrue(this.ownerProductCurator.isProductMappedToOwner(product1, owner1));
assertFalse(this.ownerProductCurator.isProductMappedToOwner(product2, owner1));
assertFalse(this.ownerProductCurator.isProductMappedToOwner(product1, owner2));
assertTrue(this.ownerProductCurator.isProductMappedToOwner(product2, owner2));
Product output = this.productManager.updateProduct(update, owner1, regenCerts);
assertEquals(output.getUuid(), product2.getUuid());
assertFalse(this.ownerProductCurator.isProductMappedToOwner(product1, owner1));
assertTrue(this.ownerProductCurator.isProductMappedToOwner(product2, owner1));
assertFalse(this.ownerProductCurator.isProductMappedToOwner(product1, owner2));
assertTrue(this.ownerProductCurator.isProductMappedToOwner(product2, owner2));
if (regenCerts) {
verify(this.mockEntCertGenerator, times(1)).regenerateCertificatesOf(eq(Arrays.asList(owner1)), anyCollectionOf(Product.class), anyBoolean());
} else {
verifyZeroInteractions(this.mockEntCertGenerator);
}
}
use of org.candlepin.model.Product in project candlepin by candlepin.
the class ProductManagerTest method testCreateProduct.
@Test
public void testCreateProduct() {
Owner owner = this.createOwner("test-owner", "Test Owner");
ProductDTO dto = TestUtil.createProductDTO("p1", "prod1");
assertNull(this.ownerProductCurator.getProductById(owner, "p1"));
Product output = this.productManager.createProduct(dto, owner);
assertEquals(output, this.ownerProductCurator.getProductById(owner, "p1"));
}
Aggregations