CheckoutSummaryConfigProviderTest.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Checkout\Test\Unit\Model\Cart;
  7. use Magento\Framework\App\Config\ScopeConfigInterface;
  8. use Magento\Framework\UrlInterface;
  9. use Magento\Checkout\Model\Cart\CheckoutSummaryConfigProvider;
  10. use Magento\Store\Model\ScopeInterface;
  11. class CheckoutSummaryConfigProviderTest extends \PHPUnit\Framework\TestCase
  12. {
  13. /**
  14. * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Framework\UrlInterface
  15. */
  16. private $urlBuilderMock;
  17. /**
  18. * @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Framework\App\Config\ScopeConfigInterface
  19. */
  20. private $scopeConfigMock;
  21. /**
  22. * @var \Magento\Checkout\Model\Cart\CheckoutSummaryConfigProvider
  23. */
  24. private $model;
  25. protected function setUp()
  26. {
  27. $this->urlBuilderMock = $this->getMockBuilder(UrlInterface::class)->getMock();
  28. $this->scopeConfigMock = $this->getMockBuilder(ScopeConfigInterface::class)->getMock();
  29. $this->model = new CheckoutSummaryConfigProvider($this->urlBuilderMock, $this->scopeConfigMock);
  30. }
  31. public function testGetConfig()
  32. {
  33. $maxItemsCount = 10;
  34. $cartUrl = 'url/to/cart/page';
  35. $expectedResult = [
  36. 'maxCartItemsToDisplay' => $maxItemsCount,
  37. 'cartUrl' => $cartUrl
  38. ];
  39. $this->urlBuilderMock->expects($this->once())->method('getUrl')->with('checkout/cart')->willReturn($cartUrl);
  40. $this->scopeConfigMock->expects($this->once())
  41. ->method('getValue')
  42. ->with('checkout/options/max_items_display_count', ScopeInterface::SCOPE_STORE)
  43. ->willReturn($maxItemsCount);
  44. $this->assertEquals($expectedResult, $this->model->getConfig());
  45. }
  46. }