Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
NameResolverTest.php
Go to the documentation of this file.
1 <?php
7 
10 
11 class NameResolverTest extends \PHPUnit\Framework\TestCase
12 {
16  private $nameResolverMock;
17 
21  private $objectManagerHelper;
22 
26  private $nameResolver;
27 
31  protected function setUp()
32  {
33  $this->nameResolverMock = $this->getMockBuilder(NameResolver::class)
34  ->disableOriginalConstructor()
35  ->setMethods(['getName'])
36  ->getMock();
37 
38  $this->objectManagerHelper = new ObjectManagerHelper($this);
39  $this->nameResolver = $this->objectManagerHelper->getObject(NameResolver::class);
40  }
41 
42  public function testGetName()
43  {
44  $elementConfigMock = [
45  'name' => 'sales_order',
46  'alias' => 'sales',
47  ];
48 
49  $this->assertSame('sales_order', $this->nameResolver->getName($elementConfigMock));
50  }
51 
58  public function testGetAlias($elementConfig, $elementAlias)
59  {
60  $elementName = 'elementName';
61 
62  $this->nameResolverMock
63  ->expects($this->once())
64  ->method('getName')
65  ->with($elementConfig)
66  ->willReturn($elementName);
67 
68  $this->assertSame($elementAlias ?: $elementName, $this->nameResolverMock->getAlias($elementConfig));
69  }
70 
74  public function getAliasDataProvider()
75  {
76  return [
77  'ElementConfigWithAliases' => [
78  ['alias' => 'sales', 'name' => 'sales_order'],
79  'sales',
80  ],
81  'ElementConfigWithoutAliases' => [
82  ['name' => 'sales_order'],
83  null,
84  ]
85  ];
86  }
87 }
$elementName
Definition: gallery.phtml:10