12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Directory\Test\Unit\Block;
- class CurrencyTest extends \PHPUnit\Framework\TestCase
- {
- /**
- * @var \Magento\Directory\Block\Currency
- */
- protected $object;
- /**
- * @var \PHPUnit_Framework_MockObject_MockObject
- */
- protected $postDataHelperMock;
- /**
- * @var \PHPUnit_Framework_MockObject_MockObject
- */
- protected $urlBuilderMock;
- protected function setUp()
- {
- $this->urlBuilderMock = $this->createMock(\Magento\Framework\UrlInterface::class);
- $this->urlBuilderMock->expects($this->any())->method('getUrl')->will($this->returnArgument(0));
- /**
- * @var \Magento\Framework\View\Element\Template\Context|\PHPUnit_Framework_MockObject_MockObject $contextMock
- */
- $contextMock = $this->getMockBuilder(\Magento\Framework\View\Element\Template\Context::class)
- ->disableOriginalConstructor()
- ->getMock();
- $contextMock->expects($this->any())->method('getUrlBuilder')->will($this->returnValue($this->urlBuilderMock));
- $escaperMock = $this->getMockBuilder(\Magento\Framework\Escaper::class)
- ->disableOriginalConstructor()
- ->getMock();
- $escaperMock->method('escapeUrl')
- ->willReturnCallback(
- function ($string) {
- return 'escapeUrl' . $string;
- }
- );
- $contextMock->expects($this->once())
- ->method('getEscaper')
- ->willReturn($escaperMock);
- /** @var \Magento\Directory\Model\CurrencyFactory $currencyFactoryMock */
- $currencyFactoryMock = $this->createMock(\Magento\Directory\Model\CurrencyFactory::class);
- $this->postDataHelperMock = $this->createMock(\Magento\Framework\Data\Helper\PostHelper::class);
- /** @var \Magento\Framework\Locale\ResolverInterface $localeResolverMock */
- $localeResolverMock = $this->createMock(\Magento\Framework\Locale\ResolverInterface::class);
- $this->object = new \Magento\Directory\Block\Currency(
- $contextMock,
- $currencyFactoryMock,
- $this->postDataHelperMock,
- $localeResolverMock
- );
- }
- public function testGetSwitchCurrencyPostData()
- {
- $expectedResult = 'post_data';
- $expectedCurrencyCode = 'test';
- $switchUrl = 'escapeUrldirectory/currency/switch';
- $this->postDataHelperMock->expects($this->once())
- ->method('getPostData')
- ->with($this->equalTo($switchUrl), $this->equalTo(['currency' => $expectedCurrencyCode]))
- ->will($this->returnValue($expectedResult));
- $this->assertEquals($expectedResult, $this->object->getSwitchCurrencyPostData($expectedCurrencyCode));
- }
- }
|