8 use Braintree\Transaction;
13 use PHPUnit_Framework_MockObject_MockObject as MockObject;
36 private $subjectReaderMock;
40 $this->paymentMock = $this->getMockBuilder(Payment::class)
41 ->disableOriginalConstructor()
43 'unsAdditionalInformation',
44 'hasAdditionalInformation',
45 'setAdditionalInformation',
49 $this->subjectReaderMock = $this->getMockBuilder(SubjectReader::class)
50 ->disableOriginalConstructor()
61 $paymentData = $this->getPaymentDataObjectMock();
64 $subject = [
'payment' => $paymentData];
67 $this->subjectReaderMock->expects(self::once())
68 ->method(
'readPayment')
70 ->willReturn($paymentData);
71 $this->subjectReaderMock->expects(self::once())
72 ->method(
'readTransaction')
76 $this->paymentMock->expects(static::at(1))
77 ->method(
'setAdditionalInformation')
78 ->with(
'liabilityShifted',
'Yes');
79 $this->paymentMock->expects(static::at(2))
80 ->method(
'setAdditionalInformation')
81 ->with(
'liabilityShiftPossible',
'Yes');
83 $this->handler->handle($subject,
$response);
90 private function getPaymentDataObjectMock()
92 $mock = $this->getMockBuilder(PaymentDataObject::class)
93 ->setMethods([
'getPayment'])
94 ->disableOriginalConstructor()
97 $mock->expects(static::once())
98 ->method(
'getPayment')
99 ->willReturn($this->paymentMock);
108 private function getBraintreeTransaction()
112 'threeDSecureInfo' => $this->getThreeDSecureInfo()
124 private function getThreeDSecureInfo()
127 'liabilityShifted' =>
'Yes',
128 'liabilityShiftPossible' =>
'Yes'