8 use Braintree\Transaction;
9 use Braintree\Transaction\PayPalDetails;
28 private $transactionStub;
33 private $attributeValueFactoryMock;
38 private $defaultRenderer;
43 private $rendererMock;
50 $this->attributeValueFactoryMock = $this->getMockBuilder(AttributeValueFactory::class)
51 ->setMethods([
'create'])
52 ->disableOriginalConstructor()
55 $this->rendererMock = $this->getMockBuilder(RendererInterface::class)
67 $this->transactionStub = Transaction::factory(
$transaction);
72 $this->attributeValueFactoryMock->expects($this->exactly($fieldsQty))
74 ->willReturnCallback(
function () {
78 $map =
new TransactionMap(
79 $this->attributeValueFactoryMock,
80 $this->transactionStub
88 $this->assertEquals($fieldsQty, count(
$result));
89 $this->assertInstanceOf(AttributeValue::class,
$result[1]);
100 $this->assertEquals(
$transaction[
'processorSettlementResponseCode'],
$result[8]->getValue());
101 $this->assertEquals(
$transaction[
'processorSettlementResponseText'],
$result[10]->getValue());
105 $this->rendererMock->expects($this->at(0))
108 ->willReturn(
'Credit card');
109 $this->assertEquals(
'Credit card',
$result[3]->getValue()->render());
111 $this->rendererMock->expects($this->at(0))
114 ->willReturn(
'Sale');
115 $this->assertEquals(
'Sale',
$result[5]->getValue()->render());
117 $this->rendererMock->expects($this->at(0))
120 ->willReturn(
'Pending for settlement');
121 $this->assertEquals(
'Pending for settlement',
$result[9]->getValue()->render());
133 'createdAt' => new \DateTime(),
134 'paypalDetails' =>
new PayPalDetails([
'paymentId' => 10]),
135 'refundIds' => [1, 2, 3, 4, 5],
136 'merchantAccountId' =>
'MerchantId',
138 'paymentInstrumentType' =>
'credit_card',
140 'amount' =>
'$19.99',
141 'processorSettlementResponseCode' => 1,
142 'status' =>
'pending_for_settlement',
143 'processorSettlementResponseText' =>
'sample text',
144 'settlementBatchId' => 2,
145 'currencyIsoCode' =>
'USD'
static setRenderer(RendererInterface $renderer)