123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Variable\Model;
- class VariableTest extends \PHPUnit\Framework\TestCase
- {
- /**
- * @var \Magento\Variable\Model\Variable
- */
- protected $_model;
- protected function setUp()
- {
- $this->_model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
- \Magento\Variable\Model\Variable::class
- );
- }
- public function testGetSetStoreId()
- {
- $this->_model->setStoreId(1);
- $this->assertEquals(1, $this->_model->getStoreId());
- }
- public function testLoadByCode()
- {
- $this->_model->setData(['code' => 'test_code', 'name' => 'test_name']);
- $this->_model->save();
- $variable = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
- \Magento\Variable\Model\Variable::class
- );
- $variable->loadByCode('test_code');
- $this->assertEquals($this->_model->getName(), $variable->getName());
- $this->_model->delete();
- }
- public function testGetValue()
- {
- $html = '<p>test</p>';
- $text = 'test';
- $this->_model->setData(['code' => 'test_code', 'html_value' => $html, 'plain_value' => $text]);
- $this->assertEquals($html, $this->_model->getValue());
- $this->assertEquals($html, $this->_model->getValue(\Magento\Variable\Model\Variable::TYPE_HTML));
- $this->assertEquals($text, $this->_model->getValue(\Magento\Variable\Model\Variable::TYPE_TEXT));
- }
- public function testValidate()
- {
- $this->assertNotEmpty($this->_model->validate());
- $this->_model->setName('test')->setCode('test');
- $this->assertNotEmpty($this->_model->validate());
- $this->_model->save();
- try {
- $this->assertTrue($this->_model->validate());
- $this->_model->delete();
- } catch (\Exception $e) {
- $this->_model->delete();
- throw $e;
- }
- }
- public function testGetVariablesOptionArray()
- {
- $this->assertEquals([], $this->_model->getVariablesOptionArray());
- }
- public function testCollection()
- {
- $collection = $this->_model->getCollection();
- $collection->setStoreId(1);
- $this->assertEquals(1, $collection->getStoreId(), 'Store id setter and getter');
- $collection->addValuesToResult();
- $this->assertContains('variable_value', (string)$collection->getSelect());
- }
- /**
- * Test to verify that returned by getVariablesOptionArray()
- * custom variable label is HTML escaped.
- */
- public function testGetVariablesOptionArrayWithHtmlLabel()
- {
- $expectedLabel = '<b>HTML Name value</b>';
- $data = [
- 'code' => 'html_name',
- 'name' => '<b>HTML Name value</b>'
- ];
- $this->_model->setData($data)->save();
- $actualLabel = current(current($this->_model->getVariablesOptionArray())['label']->getArguments());
- $this->assertEquals($expectedLabel, $actualLabel);
- }
- }
|