/** * @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->registryMock->expects($this->once())->method('registry')->willReturn($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()); }
/** * @param mixed $result * @param string[] $responseArray * @dataProvider executeDataProvider */ public function testExecute($result, $responseArray) { $getParamMap = [['variable_id', null, null], ['store', 0, 0]]; $this->requestMock->expects($this->any())->method('getParam')->willReturnMap($getParamMap); $this->requestMock->expects($this->any())->method('getPost')->with('variable')->will($this->returnValue([])); $this->variableMock->expects($this->any())->method('validate')->willReturn($result); if ($result instanceof \Magento\Framework\Phrase) { $this->messageManagerMock->expects($this->once())->method('addError')->with($result->getText()); $this->layoutMock->expects($this->once())->method('initMessages'); } $this->resultJsonMock->expects($this->once())->method('setData')->with($responseArray); $this->validateMock->execute(); }