Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
ModuleGridTest.php
Go to the documentation of this file.
1 <?php
8 
11 
15 class ModuleGridTest extends \PHPUnit\Framework\TestCase
16 {
20  private $gridModuleMock;
21 
27  private $controller;
28 
29  public function setUp()
30  {
31  $this->gridModuleMock = $this->getMockBuilder(Module::class)
32  ->disableOriginalConstructor()
33  ->getMock();
34 
35  $this->controller = new ModuleGrid(
36  $this->gridModuleMock
37  );
38  }
39 
40  public function testIndexAction()
41  {
42  $viewModel = $this->controller->indexAction();
43  $this->assertInstanceOf(\Zend\View\Model\ViewModel::class, $viewModel);
44  $this->assertTrue($viewModel->terminate());
45  }
46 
47  public function testModulesAction()
48  {
49  $moduleList = [
50  [
51  'name' => 'magento/sample-module-one',
52  'type' => 'Module',
53  'version' => '1.0.0',
54  'vendor' => 'magento',
55  'moduleName' => 'Sample_Module_One',
56  'enable' => true,
57  'requiredBy' => []
58  ],
59  [
60  'name' => 'magento/sample-module-two',
61  'type' => 'Module',
62  'version' => '1.0.0',
63  'vendor' => 'magento',
64  'moduleName' => 'Sample_Module_Two',
65  'enable' => true,
66  'requiredBy' => []
67  ]
68  ];
69 
70  $this->gridModuleMock->expects(static::once())
71  ->method('getList')
72  ->willReturn($moduleList);
73 
74  $jsonModel = $this->controller->modulesAction();
75  $this->assertInstanceOf(\Zend\View\Model\JsonModel::class, $jsonModel);
76  $variables = $jsonModel->getVariables();
77  $this->assertArrayHasKey('success', $variables);
78  $this->assertTrue($variables['success']);
79  $this->assertEquals($moduleList, $variables['modules']);
80  $this->assertArrayHasKey('total', $variables);
81  $this->assertEquals(2, $variables['total']);
82  }
83 }
$viewModel