create(\Magento\Sales\Model\Order::class); /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $objectManager->get(\Magento\Framework\Registry::class)->register('current_order', $order); $payment = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create( \Magento\Sales\Model\Order\Payment::class ); $payment->setMethod('checkmo'); $order->setPayment($payment); $layout = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get( \Magento\Framework\View\LayoutInterface::class ); $block = $layout->createBlock(\Magento\Sales\Block\Order\PrintOrder\Invoice::class, 'block'); $childBlock = $layout->addBlock(\Magento\Framework\View\Element\Text::class, 'invoice_totals', 'block'); $expectedHtml = 'Any html'; $invoice = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create( \Magento\Sales\Model\Order\Invoice::class ); $this->assertEmpty($childBlock->getInvoice()); $this->assertNotEquals($expectedHtml, $block->getInvoiceTotalsHtml($invoice)); $childBlock->setText($expectedHtml); $actualHtml = $block->getInvoiceTotalsHtml($invoice); $this->assertSame($invoice, $childBlock->getInvoice()); $this->assertEquals($expectedHtml, $actualHtml); } }