![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-email/Test/Unit/Model/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); /** * Test class for Magento\Email\Model\BackendTemplate. */ namespace Magento\Email\Test\Unit\Model; use Magento\Config\Model\Config\Structure; use Magento\Email\Model\BackendTemplate; use Magento\Email\Model\ResourceModel\Template; use Magento\Framework\App\Config\ScopeConfigInterface; use Magento\Framework\App\ObjectManager; use Magento\Framework\ObjectManagerInterface; use Magento\Framework\Serialize\Serializer\Json; use Magento\MediaStorage\Helper\File\Storage\Database; use PHPUnit\Framework\MockObject\MockObject; use PHPUnit\Framework\TestCase; /** * Tests for adminhtml email template model. */ class BackendTemplateTest extends TestCase { /** * Backend template mock * * @var BackendTemplate */ protected $model; /** * @var ScopeConfigInterface|MockObject */ protected $scopeConfigMock; /** * @var Structure|MockObject */ protected $structureMock; /** * @var Template|MockObject */ protected $resourceModelMock; /** * @var ObjectManager */ protected $objectManagerBackup; /** * @var Json|MockObject */ private $serializerMock; /** * @var Database|MockObject */ private $databaseHelperMock; protected function setUp(): void { $helper = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this); $this->scopeConfigMock = $this->getMockForAbstractClass(ScopeConfigInterface::class); $this->scopeConfigMock->expects($this->any())->method('getValue')->willReturn(['test' => 1]); $this->structureMock = $this->createMock(Structure::class); $this->structureMock->expects($this->any())->method('getFieldPathsByAttribute')->willReturn(['path' => 'test']); $this->databaseHelperMock = $this->createMock(Database::class); $this->resourceModelMock = $this->createMock(Template::class); $this->resourceModelMock->expects($this->any()) ->method('getSystemConfigByPathsAndTemplateId') ->willReturn(['test_config' => 2015]); /** @var ObjectManagerInterface|MockObject $objectManagerMock*/ $objectManagerMock = $this->getMockForAbstractClass(ObjectManagerInterface::class); $objectManagerMock->expects($this->any()) ->method('get') ->willReturnCallback( function ($value) { switch ($value) { case Database::class: return ($this->databaseHelperMock); case Template::class: return ($this->resourceModelMock); default: return(null); } } ); ObjectManager::setInstance($objectManagerMock); $this->serializerMock = $this->getMockBuilder(Json::class) ->getMock(); $this->model = $helper->getObject( BackendTemplate::class, [ 'scopeConfig' => $this->scopeConfigMock, 'structure' => $this->structureMock, 'serializer' => $this->serializerMock ] ); } protected function tearDown(): void { parent::tearDown(); /** @var ObjectManagerInterface|MockObject $objectManagerMock*/ $objectManagerMock = $this->getMockForAbstractClass(ObjectManagerInterface::class); ObjectManager::setInstance($objectManagerMock); } public function testGetSystemConfigPathsWhereCurrentlyUsedNoId() { $this->assertEquals([], $this->model->getSystemConfigPathsWhereCurrentlyUsed()); } public function testGetSystemConfigPathsWhereCurrentlyUsedValidId() { $this->model->setId(1); $this->assertEquals(['test_config' => 2015], $this->model->getSystemConfigPathsWhereCurrentlyUsed()); } }