PassthroughDataBuilderTest.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. declare(strict_types=1);
  7. namespace Magento\AuthorizenetAcceptjs\Test\Unit\Gateway\Request;
  8. use Magento\AuthorizenetAcceptjs\Gateway\Request\PassthroughDataBuilder;
  9. use Magento\AuthorizenetAcceptjs\Model\PassthroughDataObject;
  10. use PHPUnit\Framework\TestCase;
  11. class PassthroughDataBuilderTest extends TestCase
  12. {
  13. public function testBuild()
  14. {
  15. $passthroughData = new PassthroughDataObject([
  16. 'foo' => 'bar',
  17. 'baz' => 'bash'
  18. ]);
  19. $builder = new PassthroughDataBuilder($passthroughData);
  20. $expected = [
  21. 'transactionRequest' => [
  22. 'userFields' => [
  23. 'userField' => [
  24. [
  25. 'name' => 'foo',
  26. 'value' => 'bar'
  27. ],
  28. [
  29. 'name' => 'baz',
  30. 'value' => 'bash'
  31. ],
  32. ]
  33. ]
  34. ]
  35. ];
  36. $this->assertEquals($expected, $builder->build([]));
  37. }
  38. public function testBuildWithNoData()
  39. {
  40. $passthroughData = new PassthroughDataObject();
  41. $builder = new PassthroughDataBuilder($passthroughData);
  42. $expected = [];
  43. $this->assertEquals($expected, $builder->build([]));
  44. }
  45. }