@Test(groups = "slow") public void testCRUD() throws Exception { final UUID invoiceId = UUID.randomUUID(); final UUID accountId = UUID.randomUUID(); final String accountKey = UUID.randomUUID().toString(); final BusinessInvoiceModelDao invoice = createInvoice(accountId, invoiceId, accountKey); // Verify initial state Assert.assertNull(invoiceSqlDao.getInvoice(invoice.getInvoiceId().toString(), internalCallContext)); Assert.assertEquals(invoiceSqlDao.deleteInvoice(invoice.getInvoiceId().toString(), internalCallContext), 0); // Add the invoice Assert.assertEquals(invoiceSqlDao.createInvoice(invoice, internalCallContext), 1); // Retrieve it Assert.assertEquals(invoiceSqlDao.getInvoice(invoice.getInvoiceId().toString(), internalCallContext), invoice); Assert.assertEquals(invoiceSqlDao.getInvoicesForAccount(invoice.getAccountId().toString(), internalCallContext).size(), 1); Assert.assertEquals(invoiceSqlDao.getInvoicesForAccount(invoice.getAccountId().toString(), internalCallContext).get(0), invoice); // Delete it Assert.assertEquals(invoiceSqlDao.deleteInvoice(invoice.getInvoiceId().toString(), internalCallContext), 1); Assert.assertNull(invoiceSqlDao.getInvoice(invoice.getInvoiceId().toString(), internalCallContext)); Assert.assertEquals(invoiceSqlDao.getInvoicesForAccount(invoice.getAccountId().toString(), internalCallContext).size(), 0); }
Assert.assertEquals(invoice, invoice); Assert.assertTrue(invoice.equals(invoice)); Assert.assertEquals(invoice.getAccountId(), accountId); Assert.assertEquals(invoice.getAccountKey(), accountKey); Assert.assertEquals(invoice.getAmountCharged(), amountCharged);
q.bind("account_id", invoice.getAccountId().toString()); q.bind("account_key", invoice.getAccountKey());
public DefaultBusinessInvoice(final BusinessInvoiceModelDao businessInvoiceModelDao, final Collection<BusinessInvoiceItemModelDao> businessInvoiceItemModelDaos) { super(businessInvoiceModelDao.getInvoiceId(), businessInvoiceModelDao.getCreatedDate(), businessInvoiceModelDao.getUpdatedDate()); this.accountId = businessInvoiceModelDao.getAccountId(); this.accountKey = businessInvoiceModelDao.getAccountKey(); this.amountCharged = businessInvoiceModelDao.getAmountCharged(); this.amountCredited = businessInvoiceModelDao.getAmountCredited(); this.amountPaid = businessInvoiceModelDao.getAmountPaid(); this.balance = businessInvoiceModelDao.getBalance(); this.currency = businessInvoiceModelDao.getCurrency(); this.invoiceDate = businessInvoiceModelDao.getInvoiceDate(); this.invoiceId = businessInvoiceModelDao.getInvoiceId(); this.invoiceNumber = businessInvoiceModelDao.getInvoiceNumber(); this.targetDate = businessInvoiceModelDao.getTargetDate(); this.invoiceItems = toInvoiceItems(businessInvoiceItemModelDaos); }