/** * Create a product. */ public static Product create(Map<String, Object> params) throws StripeException { return create(params, null); }
/** * Delete a product. */ public Product delete() throws StripeException { return delete(null); }
/** * List all products. */ public static ProductCollection list(Map<String, Object> params) throws StripeException { return list(params, null); }
/** * List all products. */ public static ProductCollection list(Map<String, Object> params, RequestOptions options) throws StripeException { return requestCollection(classUrl(Product.class), params, ProductCollection.class, options); } // </editor-fold>
@Test public void testDelete() throws StripeException { final Product product = getProductFixture(); final Product deletedProduct = product.delete(); assertNotNull(deletedProduct); assertTrue(deletedProduct.getDeleted()); verifyRequest( ApiResource.RequestMethod.DELETE, String.format("/v1/products/%s", product.getId()) ); }
@Test public void testUpdate() throws StripeException { final Product product = getProductFixture(); Map<String, Object> params = new HashMap<>(); params.put("name", "Updated Name"); final Product updatedProduct = product.update(params); assertNotNull(updatedProduct); verifyRequest( ApiResource.RequestMethod.POST, String.format("/v1/products/%s", product.getId()), params ); }
/** * Retrieve a product. */ public static Product retrieve(String id) throws StripeException { return retrieve(id, null); }
public void setProductObject(Product product) { this.product = new ExpandableField<>(product.getId(), product); } // </editor-fold>
/** * Update a product. */ @Override public Product update(Map<String, Object> params) throws StripeException { return update(params, null); }
/** * Retrieve a product. */ public static Product retrieve(String id, RequestOptions options) throws StripeException { return retrieve(id, null, options); }
public void setProductObject(Product product) { this.product = new ExpandableField<>(product.getId(), product); } // </editor-fold>
product1.create();
private Product getProductFixture() throws StripeException { final Product product = Product.retrieve(PRODUCT_ID); resetNetworkSpy(); return product; }
@Test public void testDeserializeWithExpansions() throws Exception { final String[] expansions = { "product" }; final String data = getFixture("/v1/skus/sku_123", expansions); final Sku sku = ApiResource.GSON.fromJson(data, Sku.class); assertNotNull(sku); final Product product = sku.getProductObject(); assertNotNull(product); assertNotNull(product.getId()); assertEquals(sku.getProduct(), product.getId()); } }
@Test public void testList() throws StripeException { final Map<String, Object> params = new HashMap<>(); params.put("limit", 1); final ProductCollection products = Product.list(params); assertNotNull(products); verifyRequest( ApiResource.RequestMethod.GET, "/v1/products", params ); } }
@Test public void testCreate() throws StripeException { final List<String> attributes = new ArrayList<>(); attributes.add("attr1"); attributes.add("attr2"); final Map<String, Object> packageDimensions = new HashMap<>(); packageDimensions.put("height", 2.234); packageDimensions.put("length", 5.10); packageDimensions.put("width", 6.50); packageDimensions.put("weight", 10); final Map<String, Object> params = new HashMap<>(); params.put("active", true); params.put("name", "Test Name"); params.put("description", "This is a description"); params.put("caption", "This is a caption"); params.put("attributes", attributes); params.put("url", "http://example.com"); params.put("shippable", true); params.put("package_dimensions", packageDimensions); params.put("type", "good"); final Product product = Product.create(params); assertNotNull(product); verifyRequest( ApiResource.RequestMethod.POST, "/v1/products", params ); }
@Test public void testRetrieve() throws StripeException { final Product product = Product.retrieve(PRODUCT_ID); assertNotNull(product); verifyRequest( ApiResource.RequestMethod.GET, String.format("/v1/products/%s", PRODUCT_ID) ); }
@Test public void testDeserializeWithExpansions() throws Exception { final String[] expansions = { "product", }; final String data = getFixture("/v1/plans/gold", expansions); final Plan plan = ApiResource.GSON.fromJson(data, Plan.class); assertNotNull(plan); final Product product = plan.getProductObject(); assertNotNull(product); assertNotNull(product.getId()); assertEquals(plan.getProduct(), product.getId()); } }