/** * Assert that invoice is present in the invoices grid * * @param InvoiceIndex $invoiceIndex * @param array $ids * * @return void */ public function processAssert(InvoiceIndex $invoiceIndex, array $ids) { foreach ($ids as $orderId => $invoiceIds) { $invoiceIndex->open(); $grid = $invoiceIndex->getInvoicesGrid(); foreach ($invoiceIds as $invoiceId) { $filter = ['id' => $invoiceId, 'order_id' => $orderId]; $grid->search($filter); \PHPUnit_Framework_Assert::assertTrue($grid->isRowVisible($filter, false, true), 'Invoice is absent on invoices grid.'); } } }
/** * Assert invoice with corresponding order ID is present in the invoices grid with corresponding amount * * @param InvoiceIndex $invoiceIndex * @param OrderInjectable $order * @param array $ids * @return void */ public function processAssert(InvoiceIndex $invoiceIndex, OrderInjectable $order, array $ids) { $invoiceIndex->open(); $amount = $order->getPrice(); $orderId = $order->getId(); foreach ($ids['invoiceIds'] as $key => $invoiceId) { $filter = ['id' => $invoiceId, 'order_id' => $orderId, 'grand_total_from' => $amount[$key]['grand_invoice_total'], 'grand_total_to' => $amount[$key]['grand_invoice_total']]; $invoiceIndex->getInvoicesGrid()->search($filter); $filter['grand_total_from'] = number_format($amount[$key]['grand_invoice_total'], 2); $filter['grand_total_to'] = number_format($amount[$key]['grand_invoice_total'], 2); \PHPUnit_Framework_Assert::assertTrue($invoiceIndex->getInvoicesGrid()->isRowVisible($filter, false, false), 'Invoice is absent in invoices grid on invoice index page.'); } }
/** * Assert invoice items on invoice view page. * * @param InvoiceIndex $invoiceIndex * @param SalesInvoiceView $salesInvoiceView * @param OrderInjectable $order * @param array $ids * @param array|null $data [optional] * @return void */ public function processAssert(InvoiceIndex $invoiceIndex, SalesInvoiceView $salesInvoiceView, OrderInjectable $order, array $ids, array $data = null) { $orderId = $order->getId(); $productsData = $this->prepareOrderProducts($order, $data['items_data']); foreach ($ids['invoiceIds'] as $invoiceId) { $filter = ['order_id' => $orderId, 'id' => $invoiceId]; $invoiceIndex->open(); $invoiceIndex->getInvoicesGrid()->searchAndOpen($filter); $itemsData = $this->preparePageItems($salesInvoiceView->getItemsBlock()->getData()); $error = $this->verifyData($productsData, $itemsData); \PHPUnit_Framework_Assert::assertEmpty($error, $error); } }