InvoicesTemplatesTest.php 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  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 InvoicesTemplatesTest extends TestCase
  9. {
  10. use MockClientClasses;
  11. use MockRequestPayloads;
  12. use MockResponsePayloads;
  13. #[Test]
  14. public function it_can_create_invoice_template(): void
  15. {
  16. $expectedResponse = $this->mockCreateInvoiceTemplateResponse();
  17. $expectedParams = $this->mockCreateInvoiceTemplateParams();
  18. $expectedMethod = 'createInvoiceTemplate';
  19. $mockClient = $this->mock_client($expectedResponse, $expectedMethod, true);
  20. $mockClient->setApiCredentials($this->getMockCredentials());
  21. $mockClient->getAccessToken();
  22. $this->assertEquals($expectedResponse, $mockClient->{$expectedMethod}($expectedParams));
  23. }
  24. #[Test]
  25. public function it_can_list_invoice_templates(): void
  26. {
  27. $expectedResponse = $this->mockListInvoiceTemplateResponse();
  28. $expectedMethod = 'listInvoiceTemplates';
  29. $mockClient = $this->mock_client($expectedResponse, $expectedMethod, true);
  30. $mockClient->setApiCredentials($this->getMockCredentials());
  31. $mockClient->getAccessToken();
  32. $this->assertEquals($expectedResponse, $mockClient->{$expectedMethod}());
  33. }
  34. #[Test]
  35. public function it_can_delete_an_invoice_template(): void
  36. {
  37. $expectedResponse = '';
  38. $expectedMethod = 'deleteInvoiceTemplate';
  39. $mockClient = $this->mock_client($expectedResponse, $expectedMethod, true);
  40. $mockClient->setApiCredentials($this->getMockCredentials());
  41. $mockClient->getAccessToken();
  42. $this->assertEquals($expectedResponse, $mockClient->{$expectedMethod}('TEMP-19V05281TU309413B'));
  43. }
  44. #[Test]
  45. public function it_can_update_an_invoice_template(): void
  46. {
  47. $expectedResponse = $this->mockUpdateInvoiceTemplateResponse();
  48. $expectedParams = $this->mockUpdateInvoiceTemplateParams();
  49. $expectedMethod = 'updateInvoiceTemplate';
  50. $mockClient = $this->mock_client($expectedResponse, $expectedMethod, true);
  51. $mockClient->setApiCredentials($this->getMockCredentials());
  52. $mockClient->getAccessToken();
  53. $this->assertEquals($expectedResponse, $mockClient->{$expectedMethod}('TEMP-19V05281TU309413B', $expectedParams));
  54. }
  55. #[Test]
  56. public function it_can_get_details_for_an_invoice_template(): void
  57. {
  58. $expectedResponse = $this->mockGetInvoiceTemplateResponse();
  59. $expectedMethod = 'showInvoiceTemplateDetails';
  60. $mockClient = $this->mock_client($expectedResponse, $expectedMethod, true);
  61. $mockClient->setApiCredentials($this->getMockCredentials());
  62. $mockClient->getAccessToken();
  63. $this->assertEquals($expectedResponse, $mockClient->{$expectedMethod}('TEMP-19V05281TU309413B'));
  64. }
  65. }