@Test(groups = "slow") public void testCreateParentInvoice() throws InvoiceApiException { final UUID parentAccountId = UUID.randomUUID(); final UUID childAccountId = UUID.randomUUID(); final DateTime today = clock.getNow(account.getTimeZone()); InvoiceModelDao parentInvoice = new InvoiceModelDao(parentAccountId, today.toLocalDate(), account.getCurrency(), InvoiceStatus.DRAFT, true); InvoiceItem parentInvoiceItem = new ParentInvoiceItem(UUID.randomUUID(), today, parentInvoice.getId(), parentAccountId, childAccountId, BigDecimal.TEN, account.getCurrency(), ""); parentInvoice.addInvoiceItem(new InvoiceItemModelDao(parentInvoiceItem)); invoiceDao.createInvoices(ImmutableList.<InvoiceModelDao>of(parentInvoice), ImmutableSet.of(), context); final InvoiceModelDao parentDraftInvoice = invoiceDao.getParentDraftInvoice(parentAccountId, context); assertNotNull(parentDraftInvoice); assertEquals(parentDraftInvoice.getStatus(), InvoiceStatus.DRAFT); assertEquals(parentDraftInvoice.getInvoiceItems().size(), 1); }