1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Authorizenet\Test\Unit\Model\Directpost;
- use Magento\Authorizenet\Model\Directpost\Request;
- use Magento\Framework\Intl\DateTimeFactory;
- use PHPUnit_Framework_MockObject_MockObject as MockObject;
- class RequestTest extends \PHPUnit\Framework\TestCase
- {
- /**
- * @var DateTimeFactory|MockObject
- */
- private $dateTimeFactory;
- /**
- * @var Request
- */
- private $requestModel;
- protected function setUp()
- {
- $this->dateTimeFactory = $this->getMockBuilder(DateTimeFactory::class)
- ->disableOriginalConstructor()
- ->getMock();
- $dateTime = new \DateTime('2016-07-05 00:00:00', new \DateTimeZone('UTC'));
- $this->dateTimeFactory->method('create')
- ->willReturn($dateTime);
- $this->requestModel = new Request([], $this->dateTimeFactory);
- }
- /**
- * @param string $signatureKey
- * @param string $expectedHash
- * @dataProvider signRequestDataProvider
- */
- public function testSignRequestData(string $signatureKey, string $expectedHash)
- {
- /** @var \Magento\Authorizenet\Model\Directpost $paymentMethod */
- $paymentMethod = $this->createMock(\Magento\Authorizenet\Model\Directpost::class);
- $paymentMethod->method('getConfigData')
- ->willReturnMap(
- [
- ['test', null, true],
- ['login', null, 'login'],
- ['trans_key', null, 'trans_key'],
- ['signature_key', null, $signatureKey],
- ]
- );
- $this->requestModel->setConstantData($paymentMethod);
- $this->requestModel->signRequestData();
- $signHash = $this->requestModel->getXFpHash();
- $this->assertEquals($expectedHash, $signHash);
- }
- /**
- * @return array
- */
- public function signRequestDataProvider()
- {
- return [
- [
- 'signatureKey' => '3EAFCE5697C1B4B9748385C1FCD29D86F3B9B41C7EED85A3A01DFF65' .
- '70C8C29373C2A153355C3313CDF4AF723C0036DBF244A0821713A910024EE85547CEF37F',
- 'expectedHash' => '719ED94DF5CF3510CB5531E8115462C8F12CBCC8E917BD809E8D40B4FF06' .
- '1E14953554403DD9813CCCE0F31B184EB4DEF558E9C0747505A0C25420372DB00BE1'
- ],
- [
- 'signatureKey' => '',
- 'expectedHash' => '3656211f2c41d1e4c083606f326c0460'
- ],
- ];
- }
- }
|