Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
BaseStringUtilsTest.php
Go to the documentation of this file.
1 <?php
8 
11 
15 class BaseStringUtilsTest extends \PHPUnit\Framework\TestCase
16 {
20  private $model;
21 
25  private $booleanUtils;
26 
30  protected function setUp()
31  {
32  $this->booleanUtils = $this->createPartialMock(BooleanUtils::class, ['toBoolean']);
33  $this->booleanUtils->expects(
34  $this->any()
35  )->method(
36  'toBoolean'
37  )->will(
38  $this->returnValueMap([['true', true], ['false', false]])
39  );
40  $this->model = new BaseStringUtils($this->booleanUtils);
42  $translateRenderer = $this->getMockBuilder(RendererInterface::class)
43  ->setMethods(['render'])
44  ->getMockForAbstractClass();
45  $translateRenderer->expects(self::never())->method('render');
46  \Magento\Framework\Phrase::setRenderer($translateRenderer);
47  }
48 
57  public function testEvaluate($input, $expected)
58  {
59  $actual = $this->model->evaluate($input);
60  $this->assertSame($expected, (string)$actual);
61  }
62 
68  public function evaluateDataProvider()
69  {
70  return [
71  'no value' => [[], ''],
72  'with value' => [['value' => 'some value'], 'some value'],
73  'translation required' => [
74  ['value' => 'some value', 'translate' => 'true'],
75  'some value',
76  ],
77  'translation not required' => [['value' => 'some value', 'translate' => 'false'], 'some value'],
78  ];
79  }
80 
89  public function testEvaluateException($input)
90  {
91  $this->model->evaluate($input);
92  }
93 
100  {
101  return ['not a string' => [['value' => 123]]];
102  }
103 }
static setRenderer(RendererInterface $renderer)
Definition: Phrase.php:46