ReferencedPayoutsTest.php 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. <?php
  2. namespace Srmklive\PayPal\Tests\Unit\Adapter;
  3. use PHPUnit\Framework\Attributes\Test;
  4. use PHPUnit\Framework\TestCase;
  5. use Srmklive\PayPal\Tests\MockClientClasses;
  6. use Srmklive\PayPal\Tests\MockRequestPayloads;
  7. use Srmklive\PayPal\Tests\MockResponsePayloads;
  8. class ReferencedPayoutsTest extends TestCase
  9. {
  10. use MockClientClasses;
  11. use MockRequestPayloads;
  12. use MockResponsePayloads;
  13. #[Test]
  14. public function it_can_create_referenced_batch_payout(): void
  15. {
  16. $expectedResponse = $this->mockCreateReferencedBatchPayoutResponse();
  17. $expectedParams = $this->mockCreateReferencedBatchPayoutParams();
  18. $expectedMethod = 'createReferencedBatchPayout';
  19. $additionalMethod = 'setRequestHeaders';
  20. $mockClient = $this->mock_client($expectedResponse, $expectedMethod, true, $additionalMethod);
  21. $mockClient->setApiCredentials($this->getMockCredentials());
  22. $mockClient->getAccessToken();
  23. $mockClient->{$additionalMethod}([
  24. 'PayPal-Request-Id' => 'some-request-id',
  25. 'PayPal-Partner-Attribution-Id' => 'some-attribution-id',
  26. ]);
  27. $this->assertEquals($expectedResponse, $mockClient->{$expectedMethod}($expectedParams));
  28. }
  29. #[Test]
  30. public function it_can_list_items_referenced_in_batch_payout(): void
  31. {
  32. $expectedResponse = $this->mockShowReferencedBatchPayoutResponse();
  33. $expectedParams = 'KHbwO28lWlXwi2IlToJ2IYNG4juFv6kpbFx4J9oQ5Hb24RSp96Dk5FudVHd6v4E=';
  34. $expectedMethod = 'listItemsReferencedInBatchPayout';
  35. $mockClient = $this->mock_client($expectedResponse, $expectedMethod, true);
  36. $mockClient->setApiCredentials($this->getMockCredentials());
  37. $mockClient->getAccessToken();
  38. $this->assertEquals($expectedResponse, $mockClient->{$expectedMethod}($expectedParams));
  39. }
  40. #[Test]
  41. public function it_can_create_referenced_batch_payout_item(): void
  42. {
  43. $expectedResponse = $this->mockCreateReferencedBatchPayoutItemResponse();
  44. $expectedParams = $this->mockCreateReferencedBatchPayoutItemParams();
  45. $expectedMethod = 'createReferencedBatchPayoutItem';
  46. $additionalMethod = 'setRequestHeaders';
  47. $mockClient = $this->mock_client($expectedResponse, $expectedMethod, true, $additionalMethod);
  48. $mockClient->setApiCredentials($this->getMockCredentials());
  49. $mockClient->getAccessToken();
  50. $mockClient->{$additionalMethod}([
  51. 'PayPal-Request-Id' => 'some-request-id',
  52. 'PayPal-Partner-Attribution-Id' => 'some-attribution-id',
  53. ]);
  54. $this->assertEquals($expectedResponse, $mockClient->{$expectedMethod}($expectedParams));
  55. }
  56. #[Test]
  57. public function it_can_show_referenced_payout_item_details(): void
  58. {
  59. $expectedResponse = $this->mockShowReferencedBatchPayoutItemResponse();
  60. $expectedParams = 'CDZEC5MJ8R5HY';
  61. $expectedMethod = 'showReferencedPayoutItemDetails';
  62. $additionalMethod = 'setRequestHeader';
  63. $mockClient = $this->mock_client($expectedResponse, $expectedMethod, true, $additionalMethod);
  64. $mockClient->setApiCredentials($this->getMockCredentials());
  65. $mockClient->getAccessToken();
  66. $mockClient->{$additionalMethod}('PayPal-Partner-Attribution-Id', 'some-attribution-id');
  67. $this->assertEquals($expectedResponse, $mockClient->{$expectedMethod}($expectedParams));
  68. }
  69. }