12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\UrlRewrite\Test\Unit\Model\Message;
- use Magento\Framework\Message\MessageInterface;
- use Magento\UrlRewrite\Model\Message\UrlRewriteExceptionMessageFactory;
- use Magento\UrlRewrite\Model\Exception\UrlAlreadyExistsException;
- class UrlRewriteExceptionMessageFactoryTest extends \PHPUnit\Framework\TestCase
- {
- /**
- * @var \Magento\Framework\Message\Factory | \PHPUnit_Framework_MockObject_MockObject
- */
- private $messageFactoryMock;
- /**
- * @var \Magento\Framework\UrlInterface| \PHPUnit_Framework_MockObject_MockObject
- */
- private $urlMock;
- /**
- * @var \Magento\UrlRewrite\Model\Message\UrlRewriteExceptionMessageFactory
- */
- private $urlRewriteExceptionMessageFactory;
- protected function setUp()
- {
- $this->urlMock = $this->createMock(\Magento\Framework\UrlInterface::class);
- $this->messageFactoryMock = $this->createPartialMock(
- \Magento\Framework\Message\Factory::class,
- ['create']
- );
- $this->urlRewriteExceptionMessageFactory = new UrlRewriteExceptionMessageFactory(
- $this->messageFactoryMock,
- $this->urlMock
- );
- }
- public function testCreateMessage()
- {
- $exception = new \Exception('exception');
- $urlAlreadyExistsException = new UrlAlreadyExistsException(
- __('message'),
- $exception,
- 0,
- [['request_path' => 'url']]
- );
- $this->urlMock->expects($this->once())
- ->method('getUrl')
- ->willReturn('htmlUrl');
- $message = $this->createMock(MessageInterface::class);
- $message->expects($this->once())
- ->method('setText')
- ->with($urlAlreadyExistsException->getMessage())
- ->willReturn($message);
- $message->expects($this->once())
- ->method('setIdentifier')
- ->with(UrlRewriteExceptionMessageFactory::URL_DUPLICATE_MESSAGE_MAP_ID)
- ->willReturnSelf();
- $message->expects($this->once())
- ->method('setData')
- ->with(['urls' => ['htmlUrl' => 'url']])
- ->willReturn($message);
- $this->messageFactoryMock->expects($this->once())
- ->method('create')
- ->with(MessageInterface::TYPE_ERROR)
- ->willReturn($message);
- $this->assertEquals(
- $message,
- $this->urlRewriteExceptionMessageFactory->createMessage($urlAlreadyExistsException)
- );
- }
- /**
- * @expectedException \Magento\Framework\Exception\RuntimeException
- */
- public function testCreateMessageNotFound()
- {
- $exception = new \Exception('message');
- $this->urlRewriteExceptionMessageFactory->createMessage($exception);
- }
- }
|