VaultTokenRendererTest.php 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Braintree\Block;
  7. use Magento\Braintree\Model\Ui\PayPal\ConfigProvider;
  8. use Magento\Customer\Model\Session;
  9. use Magento\Framework\App\Area;
  10. use Magento\Framework\ObjectManagerInterface;
  11. use Magento\TestFramework\Helper\Bootstrap;
  12. use Magento\Vault\Api\Data\PaymentTokenInterface;
  13. use Magento\Vault\Block\Customer\AccountTokens;
  14. use Magento\Vault\Model\AccountPaymentTokenFactory;
  15. /**
  16. * Class VaultTokenRendererTest
  17. */
  18. class VaultTokenRendererTest extends \PHPUnit\Framework\TestCase
  19. {
  20. /**
  21. * @var AccountTokens
  22. */
  23. private $tokenBlock;
  24. /**
  25. * @var ObjectManagerInterface
  26. */
  27. private $objectManager;
  28. protected function setUp()
  29. {
  30. $bootstrap = Bootstrap::getInstance();
  31. $bootstrap->loadArea(Area::AREA_FRONTEND);
  32. $this->objectManager = Bootstrap::getObjectManager();
  33. $this->tokenBlock = $this->objectManager->get(AccountTokens::class);
  34. }
  35. /**
  36. * @covers \Magento\Vault\Block\Customer\AccountTokens::getPaymentTokens
  37. * @magentoDataFixture Magento/Braintree/_files/paypal_vault_token.php
  38. */
  39. public function testGetPaymentTokens()
  40. {
  41. $customerId = 1;
  42. $token = 'mx29vk';
  43. /** @var Session $session */
  44. $session = $this->objectManager->get(Session::class);
  45. $session->setCustomerId($customerId);
  46. $tokens = $this->tokenBlock->getPaymentTokens();
  47. static::assertCount(1, $tokens);
  48. /** @var PaymentTokenInterface $vaultToken */
  49. $vaultToken = array_pop($tokens);
  50. static::assertTrue($vaultToken->getIsActive());
  51. static::assertTrue($vaultToken->getIsVisible());
  52. static::assertEquals($token, $vaultToken->getGatewayToken());
  53. static::assertEquals(ConfigProvider::PAYPAL_CODE, $vaultToken->getPaymentMethodCode());
  54. static::assertEquals(AccountPaymentTokenFactory::TOKEN_TYPE_ACCOUNT, $vaultToken->getType());
  55. }
  56. }