Skip to content

Commit 95a26c0

Browse files
Siarhei AndreyeuSiarhei Andreyeu
authored andcommitted
MAGNIMEX-257: Write unittests
- Unit tests for import history
1 parent f6a6083 commit 95a26c0

File tree

11 files changed

+736
-37
lines changed

11 files changed

+736
-37
lines changed

app/code/Magento/CatalogImportExport/Test/Unit/Model/Indexer/Stock/Plugin/ImportTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ public function testAfterImportSource()
2525
$processorMock->expects($this->any())->method('markIndexerAsInvalid');
2626
$processorMock->expects($this->any())->method('isIndexerScheduled')->willReturn(false);
2727

28-
$someData = null;
28+
$someData = [1, 2, 3];
2929

3030
$model = new \Magento\CatalogImportExport\Model\Indexer\Stock\Plugin\Import($processorMock);
3131
$this->assertEquals($someData, $model->afterImportSource($subjectMock, $someData));

app/code/Magento/ImportExport/Helper/Report.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
*/
1616
class Report extends \Magento\Framework\App\Helper\AbstractHelper
1717
{
18-
/** @var \Magento\Framework\Stdlib\DateTime\TimeZone */
18+
/** @var \Magento\Framework\Stdlib\DateTime\Timezone */
1919
protected $timeZone;
2020

2121
/** @var \Magento\Framework\Filesystem\Directory\WriteInterface */

app/code/Magento/ImportExport/Model/Resource/History/Collection.php

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,4 @@ protected function _initSelect()
4646

4747
return $this;
4848
}
49-
50-
/**
51-
* Retrieve import in process
52-
*
53-
* @return array
54-
*/
55-
public function getImportInProcess()
56-
{
57-
return $this->getItemsByColumnValue(History::EXECUTION_TIME, History::IMPORT_IN_PROCESS);
58-
}
5949
}
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
<?php
2+
/**
3+
* Copyright © 2015 Magento. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
namespace Magento\ImportExport\Test\Unit\Block\Adminhtml\Grid\Column\Renderer;
7+
8+
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager as ObjectManagerHelper;
9+
10+
class DownloadTest extends \PHPUnit_Framework_TestCase
11+
{
12+
/**
13+
* @var \Magento\Backend\Block\Context
14+
*/
15+
protected $context;
16+
17+
/**
18+
* @var ObjectManagerHelper
19+
*/
20+
protected $objectManagerHelper;
21+
22+
/**
23+
* @var \Magento\ImportExport\Block\Adminhtml\Grid\Column\Renderer\Download
24+
*/
25+
protected $download;
26+
27+
/**
28+
* Set up
29+
*/
30+
protected function setUp()
31+
{
32+
$urlModel = $this->getMock(
33+
'Magento\Backend\Model\Url',
34+
['getUrl'],
35+
[],
36+
'',
37+
false
38+
);
39+
$urlModel->expects($this->any())->method('getUrl')->willReturn('url');
40+
$this->context = $this->getMock(
41+
'Magento\Backend\Block\Context',
42+
['getUrlBuilder'],
43+
[],
44+
'',
45+
false
46+
);
47+
$this->context->expects($this->any())->method('getUrlBuilder')->willReturn($urlModel);
48+
$data = [];
49+
50+
$this->objectManagerHelper = new ObjectManagerHelper($this);
51+
$this->download = $this->objectManagerHelper->getObject(
52+
'Magento\ImportExport\Block\Adminhtml\Grid\Column\Renderer\Download',
53+
[
54+
'context' => $this->context,
55+
'data' => $data
56+
]
57+
);
58+
}
59+
60+
/**
61+
* Test _getValue()
62+
*/
63+
public function testGetValue()
64+
{
65+
$data = ['imported_file' => 'file.csv'];
66+
$row = new \Magento\Framework\Object($data);
67+
$this->assertEquals('<p> file.csv</p><a href="url">Download</a>', $this->download->_getValue($row));
68+
}
69+
}
Lines changed: 187 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,187 @@
1+
<?php
2+
/**
3+
* Copyright © 2015 Magento. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
namespace Magento\ImportExport\Test\Unit\Controller\Adminhtml\History;
7+
8+
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager as ObjectManagerHelper;
9+
10+
/**
11+
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
12+
*/
13+
class DownloadTest extends \PHPUnit_Framework_TestCase
14+
{
15+
/**
16+
* @var \Magento\Framework\App\Request\Http|\PHPUnit_Framework_MockObject_MockObject
17+
*/
18+
protected $request;
19+
20+
/**
21+
* @var \Magento\Framework\ObjectManager\ObjectManager|\PHPUnit_Framework_MockObject_MockObject
22+
*/
23+
protected $objectManager;
24+
25+
/**
26+
* @var \Magento\Backend\Model\View\Result\Redirect|\PHPUnit_Framework_MockObject_MockObject
27+
*/
28+
protected $resultRaw;
29+
30+
/**
31+
* @var \Magento\Framework\Controller\Result\Raw|\PHPUnit_Framework_MockObject_MockObject
32+
*/
33+
protected $redirect;
34+
35+
/**
36+
* @var \Magento\Framework\TestFramework\Unit\Helper\ObjectManager
37+
*/
38+
protected $objectManagerHelper;
39+
40+
/**
41+
* @var \Magento\Backend\App\Action\Context|\PHPUnit_Framework_MockObject_MockObject
42+
*/
43+
protected $context;
44+
45+
/**
46+
* @var \Magento\ImportExport\Controller\Adminhtml\History\Download
47+
*/
48+
protected $downloadController;
49+
50+
/**
51+
* $var \Magento\ImportExport\Helper\Report|\PHPUnit_Framework_MockObject_MockObject
52+
*/
53+
protected $reportHelper;
54+
55+
/**
56+
* @var \Magento\Framework\App\Response\Http\FileFactory|\PHPUnit_Framework_MockObject_MockObject
57+
*/
58+
protected $fileFactory;
59+
60+
/**
61+
* @var \Magento\Framework\Controller\Result\RawFactory|\PHPUnit_Framework_MockObject_MockObject
62+
*/
63+
protected $resultRawFactory;
64+
65+
/**
66+
* @var \Magento\Framework\Controller\Result\RedirectFactory|\PHPUnit_Framework_MockObject_MockObject
67+
*/
68+
protected $resultRedirectFactory;
69+
70+
/**
71+
* Set up
72+
*/
73+
protected function setUp()
74+
{
75+
$this->request = $this->getMock(
76+
'Magento\Framework\App\Request\Http',
77+
['getParam'],
78+
[],
79+
'',
80+
false
81+
);
82+
$this->request->expects($this->any())->method('getParam')->with('filename')->willReturn('filename');
83+
$this->reportHelper = $this->getMock(
84+
'Magento\ImportExport\Helper\Report',
85+
['importFileExists', 'getReportSize', 'getReportOutput'],
86+
[],
87+
'',
88+
false
89+
);
90+
$this->reportHelper->expects($this->any())->method('getReportSize')->willReturn(1);
91+
$this->reportHelper->expects($this->any())->method('getReportOutput')->willReturn('output');
92+
$this->objectManager = $this->getMock(
93+
'Magento\Framework\ObjectManager\ObjectManager',
94+
['get'],
95+
[],
96+
'',
97+
false
98+
);
99+
$this->objectManager->expects($this->any())
100+
->method('get')
101+
->with('Magento\ImportExport\Helper\Report')
102+
->willReturn($this->reportHelper);
103+
$this->context = $this->getMock(
104+
'Magento\Backend\App\Action\Context',
105+
['getRequest', 'getObjectManager', 'getResultRedirectFactory'],
106+
[],
107+
'',
108+
false
109+
);
110+
$this->fileFactory = $this->getMock(
111+
'Magento\Framework\App\Response\Http\FileFactory',
112+
['create'],
113+
[],
114+
'',
115+
false
116+
);
117+
$this->resultRaw = $this->getMock(
118+
'Magento\Framework\Controller\Result\Raw',
119+
['setContents'],
120+
[],
121+
'',
122+
false
123+
);
124+
$this->resultRawFactory = $this->getMock(
125+
'\Magento\Framework\Controller\Result\RawFactory',
126+
['create'],
127+
[],
128+
'',
129+
false
130+
);
131+
$this->resultRawFactory->expects($this->any())->method('create')->willReturn($this->resultRaw);
132+
$this->redirect = $this->getMock(
133+
'\Magento\Backend\Model\View\Result\Redirect',
134+
['setPath'],
135+
[],
136+
'',
137+
false
138+
);
139+
140+
$this->resultRedirectFactory = $this->getMock(
141+
'Magento\Framework\Controller\Result\RedirectFactory',
142+
['create'],
143+
[],
144+
'',
145+
false
146+
);
147+
$this->resultRedirectFactory->expects($this->any())->method('create')->willReturn($this->redirect);
148+
149+
$this->context->expects($this->any())->method('getRequest')->willReturn($this->request);
150+
$this->context->expects($this->any())->method('getObjectManager')->willReturn($this->objectManager);
151+
$this->context->expects($this->any())
152+
->method('getResultRedirectFactory')
153+
->willReturn($this->resultRedirectFactory);
154+
155+
$this->objectManagerHelper = new ObjectManagerHelper($this);
156+
$this->downloadController = $this->objectManagerHelper->getObject(
157+
'Magento\ImportExport\Controller\Adminhtml\History\Download',
158+
[
159+
'context' => $this->context,
160+
'fileFactory' => $this->fileFactory,
161+
'resultRawFactory' => $this->resultRawFactory,
162+
'reportHelper' => $this->reportHelper
163+
]
164+
);
165+
166+
}
167+
168+
/**
169+
* Test execute()
170+
*/
171+
public function testExecute()
172+
{
173+
$this->reportHelper->expects($this->any())->method('importFileExists')->willReturn(true);
174+
$this->resultRaw->expects($this->once())->method('setContents');
175+
$this->downloadController->execute();
176+
}
177+
178+
/**
179+
* Test execute() with not found file
180+
*/
181+
public function testExecuteFileNotFound()
182+
{
183+
$this->reportHelper->expects($this->any())->method('importFileExists')->willReturn(false);
184+
$this->resultRaw->expects($this->never())->method('setContents');
185+
$this->downloadController->execute();
186+
}
187+
}
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
<?php
2+
/**
3+
* Copyright © 2015 Magento. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
namespace Magento\ImportExport\Test\Unit\Controller\Adminhtml\History;
7+
8+
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager as ObjectManagerHelper;
9+
10+
class IndexTest extends \PHPUnit_Framework_TestCase
11+
{
12+
/**
13+
* @var \Magento\Backend\App\Action\Context|\PHPUnit_Framework_MockObject_MockObject
14+
*/
15+
protected $context;
16+
17+
/**
18+
* @var \Magento\Framework\TestFramework\Unit\Helper\ObjectManager
19+
*/
20+
protected $objectManagerHelper;
21+
22+
/**
23+
* @var \Magento\ImportExport\Controller\Adminhtml\History\Index
24+
*/
25+
protected $indexController;
26+
27+
/**
28+
* @var \Magento\Framework\Controller\ResultFactory||\PHPUnit_Framework_MockObject_MockObject
29+
*/
30+
protected $resultFactory;
31+
32+
protected $resultPage;
33+
34+
/**
35+
* Set up
36+
*/
37+
protected function setUp()
38+
{
39+
$this->resultPage = $this->getMock(
40+
'Magento\Backend\Model\View\Result\Page',
41+
['setActiveMenu', 'getConfig', 'getTitle', 'prepend', 'addBreadcrumb'],
42+
[],
43+
'',
44+
false
45+
);
46+
$this->resultPage->expects($this->any())->method('getConfig')->willReturnSelf();
47+
$this->resultPage->expects($this->any())->method('getTitle')->willReturnSelf();
48+
$this->resultFactory = $this->getMock(
49+
'Magento\Framework\Controller\ResultFactory',
50+
['create'],
51+
[],
52+
'',
53+
false
54+
);
55+
$this->resultFactory->expects($this->any())->method('create')->willReturn($this->resultPage);
56+
$this->context = $this->getMock(
57+
'Magento\Backend\App\Action\Context',
58+
['getResultFactory'],
59+
[],
60+
'',
61+
false
62+
);
63+
$this->context->expects($this->any())->method('getResultFactory')->willReturn($this->resultFactory);
64+
$this->objectManagerHelper = new ObjectManagerHelper($this);
65+
$this->indexController = $this->objectManagerHelper->getObject(
66+
'Magento\ImportExport\Controller\Adminhtml\History\Index',
67+
[
68+
'context' => $this->context,
69+
]
70+
);
71+
}
72+
73+
/**
74+
* Test execute
75+
*/
76+
public function testExecute()
77+
{
78+
$this->indexController->execute();
79+
}
80+
}

0 commit comments

Comments
 (0)