![]() 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/Block/Adminhtml/Template/Edit/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Email\Test\Unit\Block\Adminhtml\Template\Edit; use Magento\Email\Block\Adminhtml\Template\Edit\Form; use Magento\Email\Model\Template; use Magento\Framework\TestFramework\Unit\Helper\ObjectManager; use Magento\Variable\Model\Source\Variables; use Magento\Variable\Model\Variable; use Magento\Variable\Model\VariableFactory; use PHPUnit\Framework\MockObject\MockObject; use PHPUnit\Framework\TestCase; /** * @covers \Magento\Email\Block\Adminhtml\Template\Edit\Form */ class FormTest extends TestCase { /** @var Form */ protected $form; /** @var Variables|MockObject */ protected $variablesMock; /** @var VariableFactory|MockObject */ protected $variableFactoryMock; /** @var Variable|MockObject */ protected $variableMock; /** @var Template|MockObject */ protected $templateMock; protected function setUp(): void { $this->variablesMock = $this->getMockBuilder(Variables::class) ->disableOriginalConstructor() ->setMethods(['toOptionArray']) ->getMock(); $this->variableFactoryMock = $this->getMockBuilder(VariableFactory::class) ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); $this->variableMock = $this->getMockBuilder(Variable::class) ->disableOriginalConstructor() ->setMethods(['getVariablesOptionArray']) ->getMock(); $this->templateMock = $this->getMockBuilder(Template::class) ->disableOriginalConstructor() ->setMethods(['getId', 'getVariablesOptionArray']) ->getMock(); $objectManager = new ObjectManager($this); $this->form = $objectManager->getObject( Form::class, [ 'variableFactory' => $this->variableFactoryMock, 'variables' => $this->variablesMock ] ); } /** * @covers \Magento\Email\Block\Adminhtml\Template\Edit\Form::getVariables */ public function testGetVariables() { $this->variablesMock->expects($this->once()) ->method('toOptionArray') ->willReturn(['var1', 'var2', 'var3']); $this->variableFactoryMock->expects($this->once()) ->method('create') ->willReturn($this->variableMock); $this->variableMock->expects($this->once()) ->method('getVariablesOptionArray') ->willReturn(['custom var 1', 'custom var 2']); $this->form->setEmailTemplate($this->templateMock); $this->templateMock->expects($this->once()) ->method('getId') ->willReturn(1); $this->templateMock->expects($this->once()) ->method('getVariablesOptionArray') ->willReturn(['template var 1', 'template var 2']); $this->assertEquals( ['var1', 'var2', 'var3', 'custom var 1', 'custom var 2', ['template var 1', 'template var 2']], $this->form->getVariables() ); } /** * @covers \Magento\Email\Block\Adminhtml\Template\Edit\Form::getEmailTemplate */ public function testGetEmailTemplate() { $this->form->setEmailTemplate($this->templateMock); $this->assertEquals($this->templateMock, $this->form->getEmailTemplate()); } }