@Override protected void step_validate_after_aggregation( List<I_C_Invoice_Candidate> invoiceCandidates, List<I_M_InOutLine> inOutLines, List<IInvoiceHeader> invoices) { // guard assertThat(config_IsSOTrx(), is(false)); assertEquals("We are expecting one invoice: " + invoices, 1, invoices.size()); final IInvoiceHeader invoice1 = invoices.remove(0); assertThat(invoice1.isSOTrx(), is(config_IsSOTrx())); assertThat(invoice1.getPOReference(), is(IC_PO_REFERENCE)); assertThat(invoice1.getDateAcct(), is(IC_DATE_ACCT)); assertThat(invoice1.isSOTrx(), is(config_IsSOTrx())); final List<IInvoiceLineRW> invoiceLines1 = getInvoiceLines(invoice1); assertEquals("We are expecting one invoice line: " + invoiceLines1, 1, invoiceLines1.size()); final IInvoiceLineRW il1 = getSingleForInOutLine(invoiceLines1, iol111); assertNotNull("Missing IInvoiceLineRW for iol111=" + iol111, il1); assertThat(il1.getQtyToInvoice(), comparesEqualTo(config_GetQtyToInvoice_Override())); assertThat(il1.getC_InvoiceCandidate_InOutLine_IDs().size(), equalTo(2)); final IInvoiceCandidateInOutLineToUpdate icIolToUpdate111 = retrieveIcIolToUpdateIfExists(il1, iol111); assertThat(icIolToUpdate111.getQtyInvoiced(), is(FIFTY)); final IInvoiceCandidateInOutLineToUpdate icIolToUpdate121 = retrieveIcIolToUpdateIfExists(il1, iol121); assertThat(icIolToUpdate121.getQtyInvoiced(), is(FIFTY.add(TWENTY))); }
/** Returns 120. */ @Override BigDecimal config_GetQtyToInvoice_Override() { return FIFTY.add(FIFTY).add(TWENTY); }