Skip to content

Commit 3f24986

Browse files
committed
AC-10634: setMethods replaced with onlyMethods() or addMethods()
1 parent 4c50584 commit 3f24986

File tree

14 files changed

+194
-119
lines changed

14 files changed

+194
-119
lines changed

app/code/Magento/Backend/Test/Unit/Model/Session/QuoteTest.php

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -130,11 +130,6 @@ class QuoteTest extends TestCase
130130
*/
131131
protected $objectManagerMock;
132132

133-
/**
134-
* @var SessionStartChecker
135-
*/
136-
protected $sessionStartCheckerMock;
137-
138133
/**
139134
* Set up
140135
*
@@ -215,14 +210,13 @@ protected function setUp(): void
215210

216211
$this->quoteFactoryMock = $this->createPartialMock(QuoteFactory::class, ['create']);
217212

218-
$this->sessionStartCheckerMock = $this->createMock(SessionStartChecker::class);
219-
220-
/** @var ObjectManagerInterface|MockObject $objectManagerMock */
221-
$objectManagerMock = $this->getMockForAbstractClass(ObjectManagerInterface::class);
222-
$objectManagerMock->expects($this->once())
223-
->method('get')
224-
->willReturn($this->sessionStartCheckerMock);
225-
\Magento\Framework\App\ObjectManager::setInstance($objectManagerMock);
213+
$objects = [
214+
[
215+
SessionStartChecker::class,
216+
$this->createMock(SessionStartChecker::class)
217+
]
218+
];
219+
$this->objectManager->prepareObjectManager($objects);
226220

227221
$this->quote = $this->getMockBuilder(Quote::class)
228222
->addMethods(['getStoreId', 'getQuoteId', 'setQuoteId', 'hasCustomerId', 'getCustomerId'])

app/code/Magento/Backup/Test/Unit/Controller/Adminhtml/Index/DownloadTest.php

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
use Magento\Framework\Controller\Result\RawFactory;
2323
use Magento\Framework\ObjectManagerInterface;
2424
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
25+
use Magento\ImportExport\Model\ResourceModel\Helper;
2526
use PHPUnit\Framework\MockObject\MockObject;
2627
use PHPUnit\Framework\TestCase;
2728

@@ -101,6 +102,11 @@ class DownloadTest extends TestCase
101102
*/
102103
protected $resultRedirectMock;
103104

105+
/**
106+
* @var Helper
107+
*/
108+
protected $resourceHelper;
109+
104110
protected function setUp(): void
105111
{
106112
$this->objectManagerMock = $this->getMockBuilder(ObjectManagerInterface::class)
@@ -111,11 +117,12 @@ protected function setUp(): void
111117
->getMock();
112118
$this->backupModelFactoryMock = $this->getMockBuilder(BackupFactory::class)
113119
->disableOriginalConstructor()
114-
->setMethods(['create'])
120+
->onlyMethods(['create'])
115121
->getMock();
116122
$this->backupModelMock = $this->getMockBuilder(Backup::class)
117123
->disableOriginalConstructor()
118-
->setMethods(['getTime', 'exists', 'getSize', 'output', 'getPath', 'getFileName'])
124+
->addMethods(['getTime', 'getPath'])
125+
->onlyMethods(['exists', 'getSize', 'output', 'getFileName'])
119126
->getMock();
120127
$this->dataHelperMock = $this->getMockBuilder(Data::class)
121128
->disableOriginalConstructor()
@@ -125,12 +132,12 @@ protected function setUp(): void
125132
->getMock();
126133
$this->resultRawFactoryMock = $this->getMockBuilder(RawFactory::class)
127134
->disableOriginalConstructor()
128-
->setMethods(['create'])
135+
->onlyMethods(['create'])
129136
->getMock();
130137
$this->resultRedirectFactoryMock = $this->getMockBuilder(
131138
RedirectFactory::class
132139
)->disableOriginalConstructor()
133-
->setMethods(['create'])
140+
->onlyMethods(['create'])
134141
->getMock();
135142
$this->resultRawMock = $this->getMockBuilder(Raw::class)
136143
->disableOriginalConstructor()
@@ -139,6 +146,10 @@ protected function setUp(): void
139146
->disableOriginalConstructor()
140147
->getMock();
141148

149+
$this->resourceHelper = $this->getMockBuilder(Helper::class)
150+
->disableOriginalConstructor()
151+
->getMock();
152+
142153
$this->objectManager = new ObjectManager($this);
143154
$this->context = $this->objectManager->getObject(
144155
Context::class,
@@ -149,9 +160,19 @@ protected function setUp(): void
149160
'resultRedirectFactory' => $this->resultRedirectFactoryMock
150161
]
151162
);
163+
164+
$objects = [
165+
[
166+
Data::class,
167+
$this->dataHelperMock
168+
]
169+
];
170+
$this->objectManager->prepareObjectManager($objects);
171+
152172
$this->downloadController = $this->objectManager->getObject(
153173
Download::class,
154174
[
175+
'helper' => $this->resourceHelper,
155176
'context' => $this->context,
156177
'backupModelFactory' => $this->backupModelFactoryMock,
157178
'fileFactory' => $this->fileFactoryMock,
@@ -260,7 +281,7 @@ public function testExecuteBackupNotFound($time, $exists, $existsCount)
260281
/**
261282
* @return array
262283
*/
263-
public function executeBackupNotFoundDataProvider()
284+
public static function executeBackupNotFoundDataProvider()
264285
{
265286
return [
266287
[1, false, 1],

app/code/Magento/Captcha/Test/Unit/Model/DefaultTest.php

Lines changed: 13 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
use Magento\Framework\ObjectManagerInterface;
1919
use Magento\Framework\Session\Storage;
2020
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
21+
use Magento\Framework\Session\SessionStartChecker;
2122
use Magento\Store\Model\Store;
2223
use Magento\Store\Model\StoreManager;
2324
use PHPUnit\Framework\MockObject\MockObject;
@@ -120,19 +121,6 @@ protected function setUp(): void
120121
$this->_getStoreStub()
121122
);
122123

123-
// \Magento\Customer\Model\Session
124-
$this->_objectManager = $this->getMockForAbstractClass(ObjectManagerInterface::class);
125-
$this->_objectManager->expects(
126-
$this->any()
127-
)->method(
128-
'get'
129-
)->willReturnMap(
130-
[
131-
Data::class => $this->_getHelperStub(),
132-
Session::class => $this->session,
133-
]
134-
);
135-
136124
$this->_resLogFactory = $this->createPartialMock(
137125
LogFactory::class,
138126
['create']
@@ -284,12 +272,20 @@ public function testGetWord()
284272
protected function _getSessionStub()
285273
{
286274
$helper = new ObjectManager($this);
275+
$objects = [
276+
[
277+
SessionStartChecker::class,
278+
$this->createMock(SessionStartChecker::class)
279+
]
280+
];
281+
$helper->prepareObjectManager($objects);
287282
$sessionArgs = $helper->getConstructArguments(
288283
Session::class,
289284
['storage' => new Storage()]
290285
);
291286
$session = $this->getMockBuilder(Session::class)
292-
->setMethods(['isLoggedIn', 'getUserCreateWord'])
287+
->addMethods(['getUserCreateWord'])
288+
->onlyMethods(['isLoggedIn'])
293289
->setConstructorArgs($sessionArgs)
294290
->getMock();
295291
$session->expects($this->any())->method('isLoggedIn')->willReturn(false);
@@ -315,7 +311,7 @@ protected function _getHelperStub()
315311
$helper = $this->getMockBuilder(
316312
Data::class
317313
)->disableOriginalConstructor()
318-
->setMethods(
314+
->onlyMethods(
319315
['getConfig', 'getFonts', '_getWebsiteCode', 'getImgUrl']
320316
)->getMock();
321317

@@ -415,7 +411,7 @@ public function testIsShownToLoggedInUser($expectedResult, $formId)
415411
/**
416412
* @return array
417413
*/
418-
public function isShownToLoggedInUserDataProvider()
414+
public static function isShownToLoggedInUserDataProvider()
419415
{
420416
return [
421417
[true, 'contact_us'],
@@ -449,7 +445,7 @@ public function testGenerateWord($string)
449445
/**
450446
* @return array
451447
*/
452-
public function generateWordProvider()
448+
public static function generateWordProvider()
453449
{
454450
return [
455451
['ABC123'],

app/code/Magento/Catalog/Test/Unit/Controller/Adminhtml/Product/Initialization/HelperTest.php

Lines changed: 38 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
use Magento\Framework\App\RequestInterface;
3030
use Magento\Framework\Locale\Format;
3131
use Magento\Framework\Locale\FormatInterface;
32+
use Magento\Framework\ObjectManagerInterface;
3233
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
3334
use Magento\Store\Api\Data\WebsiteInterface;
3435
use Magento\Store\Model\StoreManagerInterface;
@@ -125,38 +126,38 @@ protected function setUp(): void
125126
{
126127
$this->objectManager = new ObjectManager($this);
127128
$this->productLinkFactoryMock = $this->getMockBuilder(ProductLinkInterfaceFactory::class)
128-
->setMethods(['create'])
129+
->onlyMethods(['create'])
129130
->disableOriginalConstructor()
130131
->getMock();
131132
$this->productRepositoryMock = $this->createMock(ProductRepository::class);
132133
$this->requestMock = $this->getMockBuilder(RequestInterface::class)
133-
->setMethods(['getPost'])
134+
->addMethods(['getPost'])
134135
->getMockForAbstractClass();
135136
$this->storeManagerMock = $this->createMock(StoreManagerInterface::class);
136137
$this->stockFilterMock = $this->createMock(StockDataFilter::class);
137138

138139
$this->productMock = $this->getMockBuilder(Product::class)
139-
->setMethods(
140+
->addMethods(['getOptionsReadOnly'])
141+
->onlyMethods(
140142
[
141143
'getId',
142144
'isLockedAttribute',
143145
'lockAttribute',
144146
'getAttributes',
145147
'unlockAttribute',
146-
'getOptionsReadOnly',
147148
'getSku',
148149
]
149150
)
150151
->disableOriginalConstructor()
151152
->getMockForAbstractClass();
152153
$productExtensionAttributes = $this->getMockBuilder(ProductExtensionInterface::class)
153-
->setMethods(['getCategoryLinks', 'setCategoryLinks'])
154+
->addMethods(['getCategoryLinks', 'setCategoryLinks'])
154155
->getMockForAbstractClass();
155156
$this->productMock->setExtensionAttributes($productExtensionAttributes);
156157

157158
$this->customOptionFactoryMock = $this->getMockBuilder(ProductCustomOptionInterfaceFactory::class)
158159
->disableOriginalConstructor()
159-
->setMethods(['create'])
160+
->onlyMethods(['create'])
160161
->getMock();
161162
$this->productLinksMock = $this->createMock(ProductLinks::class);
162163
$this->linkTypeProviderMock = $this->createMock(LinkTypeProvider::class);
@@ -169,14 +170,22 @@ protected function setUp(): void
169170
$this->dateTimeFilterMock = $this->createMock(DateTime::class);
170171

171172
$categoryLinkFactoryMock = $this->getMockBuilder(CategoryLinkInterfaceFactory::class)
172-
->setMethods(['create'])
173+
->onlyMethods(['create'])
173174
->disableOriginalConstructor()
174175
->getMock();
175176
$categoryLinkFactoryMock->method('create')
176177
->willReturnCallback(function () {
177178
return $this->createMock(CategoryLinkInterface::class);
178179
});
179180

181+
$objects = [
182+
[
183+
ProductCustomOptionInterfaceFactory::class,
184+
$this->customOptionFactoryMock
185+
]
186+
];
187+
$this->prepareObjectManager($objects);
188+
180189
$this->helper = $this->objectManager->getObject(
181190
Helper::class,
182191
[
@@ -280,7 +289,7 @@ public function testInitialize(
280289

281290
$customOptionMock = $this->getMockBuilder(Option::class)
282291
->disableOriginalConstructor()
283-
->setMethods(null)
292+
->onlyMethods([])
284293
->getMock();
285294
$firstExpectedCustomOption = clone $customOptionMock;
286295
$firstExpectedCustomOption->setData($optionsData['option2']);
@@ -316,7 +325,7 @@ public function testInitialize(
316325
->willReturnCallback(
317326
function () {
318327
return $this->getMockBuilder(ProductLink::class)
319-
->setMethods(null)
328+
->onlyMethods([])
320329
->disableOriginalConstructor()
321330
->getMock();
322331
}
@@ -383,7 +392,7 @@ private function setProductAttributes(array $attributes): void
383392
* @return array
384393
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
385394
*/
386-
public function initializeDataProvider()
395+
public static function initializeDataProvider()
387396
{
388397
return [
389398
[
@@ -559,7 +568,7 @@ public function initializeDataProvider()
559568
* @return array
560569
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
561570
*/
562-
public function mergeProductOptionsDataProvider()
571+
public static function mergeProductOptionsDataProvider()
563572
{
564573
return [
565574
'options are not array, empty array is returned' => [
@@ -763,4 +772,22 @@ private function assembleProductRepositoryMock($links)
763772
->method('getById')
764773
->willReturnMap($repositoryReturnMap);
765774
}
775+
776+
/**
777+
* @param $map
778+
*/
779+
private function prepareObjectManager($map)
780+
{
781+
$objectManagerMock = $this->getMockBuilder(ObjectManagerInterface::class)
782+
->addMethods(['getInstance'])
783+
->onlyMethods(['get'])
784+
->getMockForAbstractClass();
785+
786+
$objectManagerMock->method('getInstance')->willReturnSelf();
787+
$objectManagerMock->method('get')->willReturnMap($map);
788+
789+
$reflectionProperty = new \ReflectionProperty(\Magento\Framework\App\ObjectManager::class, '_instance');
790+
$reflectionProperty->setAccessible(true);
791+
$reflectionProperty->setValue($objectManagerMock);
792+
}
766793
}

0 commit comments

Comments
 (0)