public void setInvoiceObject(Invoice c) { this.invoice = new ExpandableField<>(c.getId(), c); } // </editor-fold>
public void setInvoiceObject(Invoice invoice) { this.invoice = new ExpandableField<Invoice>(invoice.getId(), invoice); } // </editor-fold>
/** * Mark an invoice as uncollectible. */ public Invoice markUncollectible(Map<String, Object> params, RequestOptions options) throws StripeException { return request(RequestMethod.POST, String.format("%s/mark_uncollectible", instanceUrl(Invoice.class, this.getId())), params, Invoice.class, options); } // </editor-fold>
/** * void an invoice. */ public Invoice voidInvoice(Map<String, Object> params, RequestOptions options) throws StripeException { return request(RequestMethod.POST, String.format("%s/void", instanceUrl(Invoice.class, this.getId())), params, Invoice.class, options); } // </editor-fold>
/** * Pay an invoice. */ public Invoice pay(Map<String, Object> params, RequestOptions options) throws StripeException { return request(RequestMethod.POST, String.format("%s/pay", instanceUrl(Invoice.class, this.getId())), params, Invoice.class, options); } // </editor-fold>
/** * Finalize an invoice. */ public Invoice finalizeInvoice(Map<String, Object> params, RequestOptions options) throws StripeException { return request(RequestMethod.POST, String.format("%s/finalize", instanceUrl(Invoice.class, this.getId())), params, Invoice.class, options); } // </editor-fold>
/** * send an invoice. */ public Invoice sendInvoice(Map<String, Object> params, RequestOptions options) throws StripeException { return request(RequestMethod.POST, String.format("%s/send", instanceUrl(Invoice.class, this.getId())), params, Invoice.class, options); } // </editor-fold>
@Test public void testUpdate() throws StripeException { final Invoice invoice = getInvoiceFixture(); final Map<String, String> metadata = new HashMap<>(); metadata.put("key", "value"); final Map<String, Object> params = new HashMap<>(); params.put("metadata", metadata); final Invoice updatedInvoice = invoice.update(params); assertNotNull(updatedInvoice); verifyRequest( ApiResource.RequestMethod.POST, String.format("/v1/invoices/%s", invoice.getId()), params ); }
@Test public void testVoidInvoice() throws StripeException { final Invoice invoice = getInvoiceFixture(); final Invoice voidInvoice = invoice.voidInvoice(); assertNotNull(voidInvoice); verifyRequest( ApiResource.RequestMethod.POST, String.format("/v1/invoices/%s/void", invoice.getId()) ); } }
@Test public void testFinalizeInvoice() throws StripeException { final Invoice invoice = getInvoiceFixture(); final Invoice finalizedInvoice = invoice.finalizeInvoice(); assertNotNull(finalizedInvoice); verifyRequest( ApiResource.RequestMethod.POST, String.format("/v1/invoices/%s/finalize", invoice.getId()) ); }
@Test public void testPay() throws StripeException { final Invoice invoice = getInvoiceFixture(); final Invoice paidInvoice = invoice.pay(); assertNotNull(paidInvoice); verifyRequest( ApiResource.RequestMethod.POST, String.format("/v1/invoices/%s/pay", invoice.getId()) ); }
@Test public void testSendInvoice() throws StripeException { final Invoice invoice = getInvoiceFixture(); final Invoice sentInvoice = invoice.sendInvoice(); assertNotNull(sentInvoice); verifyRequest( ApiResource.RequestMethod.POST, String.format("/v1/invoices/%s/send", invoice.getId()) ); }
@Test public void testMarkUncollectible() throws StripeException { final Invoice invoice = getInvoiceFixture(); final Invoice uncollectibleInvoice = invoice.markUncollectible(); assertNotNull(uncollectibleInvoice); verifyRequest( ApiResource.RequestMethod.POST, String.format("/v1/invoices/%s/mark_uncollectible", invoice.getId()) ); }
@Test public void testDelete() throws StripeException { final Invoice invoice = getInvoiceFixture(); final Invoice deletedInvoice = invoice.delete(); assertNotNull(deletedInvoice); assertTrue(deletedInvoice.getDeleted()); verifyRequest( ApiResource.RequestMethod.DELETE, String.format("/v1/invoices/%s", invoice.getId()) ); }
@Test public void testDeserialize() throws Exception { final String data = getFixture("/v1/invoices/in_123"); final Invoice invoice = ApiResource.GSON.fromJson(data, Invoice.class); assertNotNull(invoice); assertNotNull(invoice.getId()); assertEquals("invoice", invoice.getObject()); assertNull(invoice.getChargeObject()); }
@Test public void testDeserializeExpanded() throws Exception { final String[] expansions = { "charge", }; final String data = getFixture("/v1/invoices/in_123", expansions); final Invoice invoice = ApiResource.GSON.fromJson(data, Invoice.class); assertNotNull(invoice); assertNotNull(invoice.getId()); final Charge charge = invoice.getChargeObject(); assertNotNull(charge); assertNotNull(charge.getId()); assertEquals(invoice.getCharge(), charge.getId()); } }
@Test public void testDeserializeExpanded() throws Exception { final String[] expansions = { "customer", "invoice", "subscription", }; final String data = getFixture("/v1/invoiceitems/ii_123", expansions); final InvoiceItem invoiceItem = ApiResource.GSON.fromJson(data, InvoiceItem.class); assertNotNull(invoiceItem); final Customer customer = invoiceItem.getCustomerObject(); assertNotNull(customer); assertNotNull(customer.getId()); assertEquals(invoiceItem.getCustomer(), customer.getId()); final Invoice invoice = invoiceItem.getInvoiceObject(); assertNotNull(invoice); assertNotNull(invoice.getId()); assertEquals(invoiceItem.getInvoice(), invoice.getId()); final Subscription subscription = invoiceItem.getSubscriptionObject(); assertNotNull(subscription); assertNotNull(subscription.getId()); assertEquals(invoiceItem.getSubscription(), subscription.getId()); } }