public function PaymentLineItemsDisplayTest::testPreRender in Payment 8.2
@covers ::preRender
File
- tests/
src/ Unit/ Element/ PaymentLineItemsDisplayTest.php, line 99
Class
- PaymentLineItemsDisplayTest
- @coversDefaultClass \Drupal\payment\Element\PaymentLineItemsDisplay
Namespace
Drupal\Tests\payment\Unit\ElementCode
public function testPreRender() {
$payment_line_item_amount = mt_rand();
$payment_line_item_total_amount = mt_rand();
$payment_line_item_currency_code = $this
->randomMachineName();
$payment_line_item = $this
->createMock(PaymentLineItemInterface::class);
$payment_line_item
->expects($this
->atLeastOnce())
->method('getAmount')
->willReturn($payment_line_item_amount);
$payment_line_item
->expects($this
->atLeastOnce())
->method('getCurrencyCode')
->willReturn($payment_line_item_currency_code);
$payment_line_item
->expects($this
->atLeastOnce())
->method('getTotalAmount')
->willReturn($payment_line_item_total_amount);
$payment_line_items_currency_code = $this
->randomMachineName();
$payment_line_items = $this
->createMock(LineItemCollectionInterface::class);
$payment_line_items
->expects($this
->atLeastOnce())
->method('getCurrencyCode')
->willReturn($payment_line_items_currency_code);
$payment_line_items
->expects($this
->atLeastOnce())
->method('getLineItems')
->willReturn([
$payment_line_item,
]);
$payment_line_item_currency = $this
->createMock(CurrencyInterface::class);
$payment_line_item_currency
->expects($this
->exactly(2))
->method('formatAmount');
$payment_line_items_currency = $this
->createMock(CurrencyInterface::class);
$payment_line_items_currency
->expects($this
->once())
->method('formatAmount');
$map = array(
array(
$payment_line_item_currency_code,
$payment_line_item_currency,
),
array(
$payment_line_items_currency_code,
$payment_line_items_currency,
),
);
$this->currencyStorage
->expects($this
->atLeast(count($map)))
->method('load')
->willReturnMap($map);
$element = array(
'#payment_line_items' => $payment_line_items,
);
$build = $this->sut
->preRender($element);
$this
->assertSame('table', $build['table']['#type']);
}