Skip to content

Commit aa20655

Browse files
authored
Merge pull request #27774 from lbajsarowicz/phpunit8/module-ImportExport
#27500 Prepare ImportExport module Tests for PHPUnit 8
2 parents 7d02f1e + 85504bb commit aa20655

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+890
-553
lines changed

app/code/Magento/ImportExport/Test/Unit/Block/Adminhtml/Export/FilterTest.php

Lines changed: 81 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -3,112 +3,142 @@
33
* Copyright © Magento, Inc. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6+
declare(strict_types=1);
7+
68
namespace Magento\ImportExport\Test\Unit\Block\Adminhtml\Export;
79

10+
use Magento\Backend\Helper\Data;
11+
use Magento\Catalog\Model\Product\ReservedAttributeList;
12+
use Magento\Catalog\Model\ResourceModel\Product;
13+
use Magento\Eav\Api\Data\AttributeOptionInterfaceFactory;
14+
use Magento\Eav\Model\Config;
15+
use Magento\Eav\Model\Entity\Attribute;
16+
use Magento\Eav\Model\Entity\TypeFactory;
17+
use Magento\Eav\Model\ResourceModel\Helper;
18+
use Magento\Framework\Api\AttributeValueFactory;
19+
use Magento\Framework\Api\DataObjectHelper;
20+
use Magento\Framework\Api\ExtensionAttributesFactory;
21+
use Magento\Framework\Data\Collection\AbstractDb;
22+
use Magento\Framework\DataObject;
23+
use Magento\Framework\Escaper;
24+
use Magento\Framework\Filesystem;
25+
use Magento\Framework\Locale\Resolver;
26+
use Magento\Framework\Model\Context;
27+
use Magento\Framework\Reflection\DataObjectProcessor;
28+
use Magento\Framework\Registry;
29+
use Magento\Framework\Stdlib\DateTime\DateTimeFormatterInterface;
30+
use Magento\Framework\Stdlib\DateTime\Timezone;
831
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager as ObjectManagerHelper;
32+
use Magento\Framework\Validator\UniversalFactory;
33+
use Magento\Framework\View\Element\Html\Date;
34+
use Magento\Framework\View\Layout;
35+
use Magento\ImportExport\Block\Adminhtml\Export\Filter;
36+
use Magento\Store\Model\StoreManager;
37+
use PHPUnit\Framework\MockObject\MockObject;
38+
use PHPUnit\Framework\TestCase;
939

1040
/**
1141
* @SuppressWarnings(PHPMD)
1242
*/
13-
class FilterTest extends \PHPUnit\Framework\TestCase
43+
class FilterTest extends TestCase
1444
{
1545
/**
16-
* @var \Magento\Framework\Model\Context|\PHPUnit_Framework_MockObject_MockObject
46+
* @var Context|MockObject
1747
*/
1848
protected $modelContext;
1949

2050
/**
21-
* @var \Magento\Framework\Registry|\PHPUnit_Framework_MockObject_MockObject
51+
* @var Registry|MockObject
2252
*/
2353
protected $registry;
2454

2555
/**
26-
* @var \Magento\Framework\Api\ExtensionAttributesFactory|\PHPUnit_Framework_MockObject_MockObject
56+
* @var ExtensionAttributesFactory|MockObject
2757
*/
2858
protected $extensionFactory;
2959

3060
/**
31-
* @var \Magento\Framework\Api\AttributeValueFactory|\PHPUnit_Framework_MockObject_MockObject
61+
* @var AttributeValueFactory|MockObject
3262
*/
3363
protected $customAttributeFactory;
3464

3565
/**
36-
* @var \Magento\Eav\Model\Config|\PHPUnit_Framework_MockObject_MockObject
66+
* @var Config|MockObject
3767
*/
3868
protected $eavConfig;
3969

4070
/**
41-
* @var \Magento\Eav\Model\Entity\TypeFactory|\PHPUnit_Framework_MockObject_MockObject
71+
* @var TypeFactory|MockObject
4272
*/
4373
protected $eavTypeFactory;
4474

4575
/**
46-
* @var \Magento\Store\Model\StoreManager|\PHPUnit_Framework_MockObject_MockObject
76+
* @var StoreManager|MockObject
4777
*/
4878
protected $storeManager;
4979

5080
/**
51-
* @var \Magento\Eav\Model\ResourceModel\Helper|\PHPUnit_Framework_MockObject_MockObject
81+
* @var Helper|MockObject
5282
*/
5383
protected $resourceHelper;
5484

5585
/**
56-
* @var \Magento\Framework\Validator\UniversalFactory|\PHPUnit_Framework_MockObject_MockObject
86+
* @var UniversalFactory|MockObject
5787
*/
5888
protected $universalFactory;
5989

6090
/**
61-
* @var \Magento\Eav\Api\Data\AttributeOptionInterfaceFactory|\PHPUnit_Framework_MockObject_MockObject
91+
* @var AttributeOptionInterfaceFactory|MockObject
6292
*/
6393
protected $optionDataFactory;
6494

6595
/**
66-
* @var \Magento\Framework\Reflection\DataObjectProcessor|\PHPUnit_Framework_MockObject_MockObject
96+
* @var DataObjectProcessor|MockObject
6797
*/
6898
protected $dataObjectProcessor;
6999

70100
/**
71-
* @var \Magento\Framework\Api\DataObjectHelper|\PHPUnit_Framework_MockObject_MockObject
101+
* @var DataObjectHelper|MockObject
72102
*/
73103
protected $dataObjectHelper;
74104

75105
/**
76-
* @var \Magento\Framework\Stdlib\DateTime\Timezone|\PHPUnit_Framework_MockObject_MockObject
106+
* @var Timezone|MockObject
77107
*/
78108
protected $localeDate;
79109

80110
/**
81-
* @var \Magento\Catalog\Model\Product\ReservedAttributeList|\PHPUnit_Framework_MockObject_MockObject
111+
* @var ReservedAttributeList|MockObject
82112
*/
83113
protected $reservedAttributeList;
84114

85115
/**
86-
* @var \Magento\Framework\Locale\Resolver|\PHPUnit_Framework_MockObject_MockObject
116+
* @var Resolver|MockObject
87117
*/
88118
protected $localeResolver;
89119

90120
/**
91-
* @var \Magento\Catalog\Model\ResourceModel\Product|\PHPUnit_Framework_MockObject_MockObject
121+
* @var Product|MockObject
92122
*/
93123
protected $resource;
94124

95125
/**
96-
* @var \PHPUnit_Framework_MockObject_MockObject
126+
* @var MockObject
97127
*/
98128
protected $resourceCollection;
99129

100130
/**
101-
* @var \Magento\Backend\Block\Template\Context|\PHPUnit_Framework_MockObject_MockObject
131+
* @var \Magento\Backend\Block\Template\Context|MockObject
102132
*/
103133
protected $context;
104134

105135
/**
106-
* @var \Magento\Backend\Helper\Data|\PHPUnit_Framework_MockObject_MockObject
136+
* @var Data|MockObject
107137
*/
108138
protected $backendHelper;
109139

110140
/**
111-
* @var \Magento\ImportExport\Helper\Data|\PHPUnit_Framework_MockObject_MockObject
141+
* @var \Magento\ImportExport\Helper\Data|MockObject
112142
*/
113143
protected $importExportData;
114144

@@ -118,36 +148,36 @@ class FilterTest extends \PHPUnit\Framework\TestCase
118148
protected $objectManagerHelper;
119149

120150
/**
121-
* @var \Magento\ImportExport\Block\Adminhtml\Export\Filter|\PHPUnit_Framework_MockObject_MockObject
151+
* @var Filter|MockObject
122152
*/
123153
protected $filter;
124154

125155
/**
126-
* @var \Magento\Framework\Stdlib\DateTime\DateTimeFormatterInterface|\PHPUnit_Framework_MockObject_MockObject
156+
* @var DateTimeFormatterInterface|MockObject
127157
*/
128158
private $dateTimeFormatter;
129159

130-
protected function setUp()
160+
protected function setUp(): void
131161
{
132-
$this->modelContext = $this->createMock(\Magento\Framework\Model\Context::class);
133-
$this->registry = $this->createMock(\Magento\Framework\Registry::class);
134-
$this->extensionFactory = $this->createMock(\Magento\Framework\Api\ExtensionAttributesFactory::class);
135-
$this->customAttributeFactory = $this->createMock(\Magento\Framework\Api\AttributeValueFactory::class);
136-
$this->eavConfig = $this->createMock(\Magento\Eav\Model\Config::class);
137-
$this->eavTypeFactory = $this->createMock(\Magento\Eav\Model\Entity\TypeFactory::class);
138-
$this->storeManager = $this->createMock(\Magento\Store\Model\StoreManager::class);
139-
$this->resourceHelper = $this->createMock(\Magento\Eav\Model\ResourceModel\Helper::class);
140-
$this->universalFactory = $this->createMock(\Magento\Framework\Validator\UniversalFactory::class);
141-
$this->optionDataFactory = $this->createMock(\Magento\Eav\Api\Data\AttributeOptionInterfaceFactory::class);
142-
$this->dataObjectProcessor = $this->createMock(\Magento\Framework\Reflection\DataObjectProcessor::class);
143-
$this->dataObjectHelper = $this->createMock(\Magento\Framework\Api\DataObjectHelper::class);
144-
$this->localeDate = $this->createMock(\Magento\Framework\Stdlib\DateTime\Timezone::class);
162+
$this->modelContext = $this->createMock(Context::class);
163+
$this->registry = $this->createMock(Registry::class);
164+
$this->extensionFactory = $this->createMock(ExtensionAttributesFactory::class);
165+
$this->customAttributeFactory = $this->createMock(AttributeValueFactory::class);
166+
$this->eavConfig = $this->createMock(Config::class);
167+
$this->eavTypeFactory = $this->createMock(TypeFactory::class);
168+
$this->storeManager = $this->createMock(StoreManager::class);
169+
$this->resourceHelper = $this->createMock(Helper::class);
170+
$this->universalFactory = $this->createMock(UniversalFactory::class);
171+
$this->optionDataFactory = $this->createMock(AttributeOptionInterfaceFactory::class);
172+
$this->dataObjectProcessor = $this->createMock(DataObjectProcessor::class);
173+
$this->dataObjectHelper = $this->createMock(DataObjectHelper::class);
174+
$this->localeDate = $this->createMock(Timezone::class);
145175
$this->localeDate->expects($this->any())->method('getDateFormat')->will($this->returnValue('12-12-2012'));
146-
$this->reservedAttributeList = $this->createMock(\Magento\Catalog\Model\Product\ReservedAttributeList::class);
147-
$this->localeResolver = $this->createMock(\Magento\Framework\Locale\Resolver::class);
148-
$this->resource = $this->createMock(\Magento\Catalog\Model\ResourceModel\Product::class);
176+
$this->reservedAttributeList = $this->createMock(ReservedAttributeList::class);
177+
$this->localeResolver = $this->createMock(Resolver::class);
178+
$this->resource = $this->createMock(Product::class);
149179
$this->resourceCollection = $this->getMockForAbstractClass(
150-
\Magento\Framework\Data\Collection\AbstractDb::class,
180+
AbstractDb::class,
151181
[],
152182
'',
153183
false
@@ -156,33 +186,33 @@ protected function setUp()
156186
\Magento\Backend\Block\Template\Context::class,
157187
['getFileSystem', 'getEscaper', 'getLocaleDate', 'getLayout']
158188
);
159-
$filesystem = $this->createMock(\Magento\Framework\Filesystem::class);
189+
$filesystem = $this->createMock(Filesystem::class);
160190
$this->context->expects($this->any())->method('getFileSystem')->will($this->returnValue($filesystem));
161-
$escaper = $this->createPartialMock(\Magento\Framework\Escaper::class, ['escapeHtml']);
191+
$escaper = $this->createPartialMock(Escaper::class, ['escapeHtml']);
162192
$escaper->expects($this->any())->method('escapeHtml')->will($this->returnValue(''));
163193
$this->context->expects($this->any())->method('getEscaper')->will($this->returnValue($escaper));
164-
$timeZone = $this->createMock(\Magento\Framework\Stdlib\DateTime\Timezone::class);
194+
$timeZone = $this->createMock(Timezone::class);
165195
$timeZone->expects($this->any())->method('getDateFormat')->will($this->returnValue('M/d/yy'));
166196
$this->context->expects($this->any())->method('getLocaleDate')->will($this->returnValue($timeZone));
167197
$dateBlock = $this->createPartialMock(
168-
\Magento\Framework\View\Element\Html\Date::class,
198+
Date::class,
169199
['setValue', 'getHtml', 'setId', 'getId']
170200
);
171201
$dateBlock->expects($this->any())->method('setValue')->will($this->returnSelf());
172202
$dateBlock->expects($this->any())->method('getHtml')->will($this->returnValue(''));
173203
$dateBlock->expects($this->any())->method('setId')->will($this->returnSelf());
174204
$dateBlock->expects($this->any())->method('getId')->will($this->returnValue(1));
175-
$layout = $this->createMock(\Magento\Framework\View\Layout::class);
205+
$layout = $this->createMock(Layout::class);
176206
$layout->expects($this->any())->method('createBlock')->will($this->returnValue($dateBlock));
177207
$this->context->expects($this->any())->method('getLayout')->will($this->returnValue($layout));
178-
$this->backendHelper = $this->createMock(\Magento\Backend\Helper\Data::class);
208+
$this->backendHelper = $this->createMock(Data::class);
179209
$this->importExportData = $this->createMock(\Magento\ImportExport\Helper\Data::class);
180210
$this->dateTimeFormatter = $this->createMock(
181-
\Magento\Framework\Stdlib\DateTime\DateTimeFormatterInterface::class
211+
DateTimeFormatterInterface::class
182212
);
183213
$this->objectManagerHelper = new ObjectManagerHelper($this);
184214
$this->filter = $this->objectManagerHelper->getObject(
185-
\Magento\ImportExport\Block\Adminhtml\Export\Filter::class,
215+
Filter::class,
186216
[
187217
'context' => $this->context,
188218
'backendHelper' => $this->backendHelper,
@@ -202,7 +232,7 @@ protected function setUp()
202232
public function testDecorateFilter($attributeData, $backendType, $columnValue)
203233
{
204234
$value = '';
205-
$attribute = new \Magento\Eav\Model\Entity\Attribute(
235+
$attribute = new Attribute(
206236
$this->modelContext,
207237
$this->registry,
208238
$this->extensionFactory,
@@ -227,7 +257,7 @@ public function testDecorateFilter($attributeData, $backendType, $columnValue)
227257
$attribute->setOptions($attributeData['options']);
228258
$attribute->setFilterOptions($attributeData['filter_options']);
229259
$attribute->setBackendType($backendType);
230-
$column = new \Magento\Framework\DataObject();
260+
$column = new DataObject();
231261
$column->setData($columnValue, 'value');
232262
$isExport = true;
233263
$result = $this->filter->decorateFilter($value, $attribute, $column, $isExport);

app/code/Magento/ImportExport/Test/Unit/Block/Adminhtml/Grid/Column/Renderer/DownloadTest.php

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,21 @@
33
* Copyright © Magento, Inc. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6+
declare(strict_types=1);
7+
68
namespace Magento\ImportExport\Test\Unit\Block\Adminhtml\Grid\Column\Renderer;
79

10+
use Magento\Backend\Block\Context;
11+
use Magento\Backend\Model\Url;
12+
use Magento\Framework\DataObject;
813
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager as ObjectManagerHelper;
14+
use Magento\ImportExport\Block\Adminhtml\Grid\Column\Renderer\Download;
15+
use PHPUnit\Framework\TestCase;
916

10-
class DownloadTest extends \PHPUnit\Framework\TestCase
17+
class DownloadTest extends TestCase
1118
{
1219
/**
13-
* @var \Magento\Backend\Block\Context
20+
* @var Context
1421
*/
1522
protected $context;
1623

@@ -20,24 +27,24 @@ class DownloadTest extends \PHPUnit\Framework\TestCase
2027
protected $objectManagerHelper;
2128

2229
/**
23-
* @var \Magento\ImportExport\Block\Adminhtml\Grid\Column\Renderer\Download
30+
* @var Download
2431
*/
2532
protected $download;
2633

2734
/**
2835
* Set up
2936
*/
30-
protected function setUp()
37+
protected function setUp(): void
3138
{
32-
$urlModel = $this->createPartialMock(\Magento\Backend\Model\Url::class, ['getUrl']);
39+
$urlModel = $this->createPartialMock(Url::class, ['getUrl']);
3340
$urlModel->expects($this->any())->method('getUrl')->willReturn('url');
34-
$this->context = $this->createPartialMock(\Magento\Backend\Block\Context::class, ['getUrlBuilder']);
41+
$this->context = $this->createPartialMock(Context::class, ['getUrlBuilder']);
3542
$this->context->expects($this->any())->method('getUrlBuilder')->willReturn($urlModel);
3643
$data = [];
3744

3845
$this->objectManagerHelper = new ObjectManagerHelper($this);
3946
$this->download = $this->objectManagerHelper->getObject(
40-
\Magento\ImportExport\Block\Adminhtml\Grid\Column\Renderer\Download::class,
47+
Download::class,
4148
[
4249
'context' => $this->context,
4350
'data' => $data
@@ -51,7 +58,7 @@ protected function setUp()
5158
public function testGetValue()
5259
{
5360
$data = ['imported_file' => 'file.csv'];
54-
$row = new \Magento\Framework\DataObject($data);
61+
$row = new DataObject($data);
5562
$this->assertEquals('<p> file.csv</p><a href="url">Download</a>', $this->download->_getValue($row));
5663
}
5764
}

0 commit comments

Comments
 (0)