Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
ExportLowstockExcelTest.php
Go to the documentation of this file.
1 <?php
8 
10 
12 {
17 
21  protected $dateMock;
22 
26  protected function setUp()
27  {
28  parent::setUp();
29 
30  $this->dateMock = $this->getMockBuilder(\Magento\Framework\Stdlib\DateTime\Filter\Date::class)
31  ->disableOriginalConstructor()
32  ->getMock();
33 
34  $objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
35  $this->exportLowstockExcel = $objectManager->getObject(
36  \Magento\Reports\Controller\Adminhtml\Report\Product\ExportLowstockExcel::class,
37  [
38  'context' => $this->contextMock,
39  'fileFactory' => $this->fileFactoryMock,
40  'dateFilter' => $this->dateMock,
41  ]
42  );
43  }
44 
48  public function testExecute()
49  {
50  $content = ['export'];
51 
52  $this->abstractBlockMock
53  ->expects($this->once())
54  ->method('getExcelFile')
55  ->willReturn($content);
56 
57  $this->layoutMock
58  ->expects($this->once())
59  ->method('getChildBlock')
60  ->with('adminhtml.block.report.product.lowstock.grid', 'grid.export')
61  ->willReturn($this->abstractBlockMock);
62 
63  $this->fileFactoryMock
64  ->expects($this->once())
65  ->method('create')
66  ->with('products_lowstock.xml', $content, \Magento\Framework\App\Filesystem\DirectoryList::VAR_DIR);
67 
68  $this->exportLowstockExcel->execute();
69  }
70 }
$objectManager
Definition: bootstrap.php:17