Skip to content

Commit 9133065

Browse files
author
Olga Kopylova
committed
MAGETWO-39841: [GitHub] Running 'log:clean' through cli results in an error: 'Area code not set' #1442
- updated tests
1 parent 35960c6 commit 9133065

File tree

8 files changed

+50
-26
lines changed

8 files changed

+50
-26
lines changed

app/code/Magento/Indexer/Console/Command/AbstractIndexerCommand.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,8 @@ protected function getObjectManager()
6262
/** @var \Magento\Framework\App\State $appState */
6363
$appState = $this->objectManager->get('Magento\Framework\App\State');
6464
$appState->setAreaCode($area);
65-
$configLocator = $this->objectManager->get('Magento\Framework\App\ObjectManager\ConfigLoader');
66-
$this->objectManager->configure($configLocator->load($area));
65+
$configLoader = $this->objectManager->get('Magento\Framework\App\ObjectManager\ConfigLoader');
66+
$this->objectManager->configure($configLoader->load($area));
6767
}
6868
return $this->objectManager;
6969
}

app/code/Magento/Indexer/Test/Unit/Console/Command/IndexerCommandCommonTestSetup.php

+26-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,15 @@
55
*/
66
namespace Magento\Indexer\Test\Unit\Console\Command;
77

8+
use Magento\Backend\App\Area\FrontNameResolver;
89
use Magento\Framework\App\ObjectManagerFactory;
910

1011
class IndexerCommandCommonTestSetup extends \PHPUnit_Framework_TestCase
1112
{
13+
/**
14+
* @var \PHPUnit_Framework_MockObject_MockObject|\Magento\Framework\App\ObjectManager\ConfigLoader
15+
*/
16+
private $configLoaderMock;
1217
/**
1318
* @var \PHPUnit_Framework_MockObject_MockObject|IndexerFactory
1419
*/
@@ -41,10 +46,14 @@ protected function setUp()
4146
$this->objectManagerFactory->expects($this->any())->method('create')->willReturn($this->objectManager);
4247

4348
$this->stateMock = $this->getMock('Magento\Framework\App\State', [], [], '', false);
49+
$this->configLoaderMock = $this->getMock('Magento\Framework\App\ObjectManager\ConfigLoader', [], [], '', false);
50+
4451
$this->objectManager->expects($this->any())
4552
->method('get')
46-
->with('Magento\Framework\App\State')
47-
->willReturn($this->stateMock);
53+
->will($this->returnValueMap([
54+
['Magento\Framework\App\State', $this->stateMock],
55+
['Magento\Framework\App\ObjectManager\ConfigLoader', $this->configLoaderMock]
56+
]));
4857

4958
$this->collectionFactory = $this->getMockBuilder('Magento\Indexer\Model\Indexer\CollectionFactory')
5059
->disableOriginalConstructor()
@@ -63,4 +72,19 @@ protected function setUp()
6372
['Magento\Indexer\Model\IndexerFactory', [], $this->indexerFactory],
6473
]));
6574
}
75+
76+
protected function configureAdminArea()
77+
{
78+
$config = ['test config'];
79+
$this->configLoaderMock->expects($this->once())
80+
->method('load')
81+
->with(FrontNameResolver::AREA_CODE)
82+
->will($this->returnValue($config));
83+
$this->objectManager->expects($this->once())
84+
->method('configure')
85+
->with($config);
86+
$this->stateMock->expects($this->once())
87+
->method('setAreaCode')
88+
->with(FrontNameResolver::AREA_CODE);
89+
}
6690
}

app/code/Magento/Indexer/Test/Unit/Console/Command/IndexerInfoCommandTest.php

+3-1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
*/
66
namespace Magento\Indexer\Test\Unit\Console\Command;
77

8+
use Magento\Backend\App\Area\FrontNameResolver;
89
use Magento\Indexer\Console\Command\IndexerInfoCommand;
910
use Symfony\Component\Console\Tester\CommandTester;
1011

@@ -20,11 +21,12 @@ class IndexerInfoCommandTest extends IndexerCommandCommonTestSetup
2021
protected function setUp()
2122
{
2223
parent::setUp();
23-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
24+
$this->stateMock->expects($this->once())->method('setAreaCode')->with(FrontNameResolver::AREA_CODE);
2425
}
2526

2627
public function testExecute()
2728
{
29+
$this->configureAdminArea();
2830
$collection = $this->getMock('Magento\Indexer\Model\Indexer\Collection', [], [], '', false);
2931
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
3032
$indexerOne->expects($this->once())->method('getId')->willReturn('id_indexerOne');

app/code/Magento/Indexer/Test/Unit/Console/Command/IndexerReindexCommandTest.php

+5-5
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public function testGetOptions()
2929

3030
public function testExecuteAll()
3131
{
32-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
32+
$this->configureAdminArea();
3333
$collection = $this->getMock('Magento\Indexer\Model\Indexer\Collection', [], [], '', false);
3434
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
3535
$indexerOne->expects($this->once())->method('getTitle')->willReturn('Title_indexerOne');
@@ -46,7 +46,7 @@ public function testExecuteAll()
4646

4747
public function testExecuteWithIndex()
4848
{
49-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
49+
$this->configureAdminArea();
5050
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
5151
$indexerOne->expects($this->once())->method('reindexAll');
5252
$indexerOne->expects($this->once())->method('getTitle')->willReturn('Title_indexerOne');
@@ -69,7 +69,7 @@ public function testExecuteWithIndex()
6969

7070
public function testExecuteWithLocalizedException()
7171
{
72-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
72+
$this->configureAdminArea();
7373
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
7474
$localizedException = new \Magento\Framework\Exception\LocalizedException(__('Some Exception Message'));
7575
$indexerOne->expects($this->once())->method('reindexAll')->will($this->throwException($localizedException));
@@ -84,7 +84,7 @@ public function testExecuteWithLocalizedException()
8484

8585
public function testExecuteWithException()
8686
{
87-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
87+
$this->configureAdminArea();
8888
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
8989
$exception = new \Exception();
9090
$indexerOne->expects($this->once())->method('reindexAll')->will($this->throwException($exception));
@@ -100,7 +100,7 @@ public function testExecuteWithException()
100100

101101
public function testExecuteWithExceptionInLoad()
102102
{
103-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
103+
$this->configureAdminArea();
104104
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
105105
$exception = new \Exception();
106106
$indexerOne->expects($this->once())->method('load')->will($this->throwException($exception));

app/code/Magento/Indexer/Test/Unit/Console/Command/IndexerSetModeCommandTest.php

+8-7
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
*/
66
namespace Magento\Indexer\Test\Unit\Console\Command;
77

8+
use Magento\Backend\App\Area\FrontNameResolver;
89
use Magento\Indexer\Console\Command\IndexerSetModeCommand;
910
use Symfony\Component\Console\Tester\CommandTester;
1011

@@ -22,7 +23,7 @@ class IndexerSetModeCommandTest extends IndexerCommandCommonTestSetup
2223

2324
public function testGetOptions()
2425
{
25-
$this->stateMock->expects($this->never())->method('setAreaCode')->with('adminmhtml');
26+
$this->stateMock->expects($this->never())->method('setAreaCode')->with(FrontNameResolver::AREA_CODE);
2627
$this->command = new IndexerSetModeCommand($this->objectManagerFactory);
2728
$optionsList = $this->command->getInputList();
2829
$this->assertSame(3, sizeof($optionsList));
@@ -37,7 +38,7 @@ public function testGetOptions()
3738
*/
3839
public function testExecuteInvalidArgument()
3940
{
40-
$this->stateMock->expects($this->never())->method('setAreaCode')->with('adminmhtml');
41+
$this->stateMock->expects($this->never())->method('setAreaCode')->with(FrontNameResolver::AREA_CODE);
4142
$this->command = new IndexerSetModeCommand($this->objectManagerFactory);
4243
$commandTester = new CommandTester($this->command);
4344
$commandTester->execute([]);
@@ -49,15 +50,15 @@ public function testExecuteInvalidArgument()
4950
*/
5051
public function testExecuteInvalidMode()
5152
{
52-
$this->stateMock->expects($this->never())->method('setAreaCode')->with('adminmhtml');
53+
$this->stateMock->expects($this->never())->method('setAreaCode')->with(FrontNameResolver::AREA_CODE);
5354
$this->command = new IndexerSetModeCommand($this->objectManagerFactory);
5455
$commandTester = new CommandTester($this->command);
5556
$commandTester->execute(['mode' => 'wrong_mode']);
5657
}
5758

5859
public function testExecuteAll()
5960
{
60-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
61+
$this->configureAdminArea();
6162
$collection = $this->getMock('Magento\Indexer\Model\Indexer\Collection', [], [], '', false);
6263
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
6364

@@ -91,7 +92,7 @@ public function testExecuteAll()
9192
*/
9293
public function testExecuteWithIndex($isScheduled, $previous, $current, $mode, $expectedValue)
9394
{
94-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
95+
$this->configureAdminArea();
9596
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
9697
$indexerOne->expects($this->once())->method('getTitle')->willReturn('Title_indexerOne');
9798
$indexerOne->expects($this->once())->method('load')->with('id_indexerOne')->willReturn($indexerOne);
@@ -152,7 +153,7 @@ public function executeWithIndexDataProvider()
152153

153154
public function testExecuteWithLocalizedException()
154155
{
155-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
156+
$this->configureAdminArea();
156157
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
157158
$localizedException = new \Magento\Framework\Exception\LocalizedException(__('Some Exception Message'));
158159
$indexerOne->expects($this->once())->method('setScheduled')->will($this->throwException($localizedException));
@@ -167,7 +168,7 @@ public function testExecuteWithLocalizedException()
167168

168169
public function testExecuteWithException()
169170
{
170-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
171+
$this->configureAdminArea();
171172
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
172173
$exception = new \Exception();
173174
$indexerOne->expects($this->once())->method('setScheduled')->will($this->throwException($exception));

app/code/Magento/Indexer/Test/Unit/Console/Command/IndexerShowModeCommandTest.php

+4-1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
*/
66
namespace Magento\Indexer\Test\Unit\Console\Command;
77

8+
use Magento\Backend\App\Area\FrontNameResolver;
89
use Magento\Indexer\Console\Command\IndexerShowModeCommand;
910
use Symfony\Component\Console\Tester\CommandTester;
1011

@@ -19,7 +20,7 @@ class IndexerShowModeCommandTest extends IndexerCommandCommonTestSetup
1920

2021
public function testGetOptions()
2122
{
22-
$this->stateMock->expects($this->never())->method('setAreaCode')->with('adminmhtml');
23+
$this->stateMock->expects($this->never())->method('setAreaCode')->with(FrontNameResolver::AREA_CODE);
2324
$this->command = new IndexerShowModeCommand($this->objectManagerFactory);
2425
$optionsList = $this->command->getInputList();
2526
$this->assertSame(2, sizeof($optionsList));
@@ -29,6 +30,7 @@ public function testGetOptions()
2930

3031
public function testExecuteAll()
3132
{
33+
$this->configureAdminArea();
3234
$collection = $this->getMock('Magento\Indexer\Model\Indexer\Collection', [], [], '', false);
3335
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
3436
$indexerOne->expects($this->once())->method('getTitle')->willReturn('Title_indexerOne');
@@ -52,6 +54,7 @@ public function testExecuteAll()
5254

5355
public function testExecuteWithIndex()
5456
{
57+
$this->configureAdminArea();
5558
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
5659
$indexerOne->expects($this->once())->method('getTitle')->willReturn('Title_indexerOne');
5760
$indexerOne->expects($this->once())->method('isScheduled')->willReturn(true);

app/code/Magento/Indexer/Test/Unit/Console/Command/IndexerStatusCommandTest.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ class IndexerStatusCommandTest extends IndexerCommandCommonTestSetup
1919

2020
public function testExecuteAll()
2121
{
22-
$this->stateMock->expects($this->once())->method('setAreaCode')->with('adminmhtml');
22+
$this->configureAdminArea();
2323
$collection = $this->getMock('Magento\Indexer\Model\Indexer\Collection', [], [], '', false);
2424
$indexerOne = $this->getMock('Magento\Indexer\Model\Indexer', [], [], '', false);
2525
$indexerOne->expects($this->once())->method('getTitle')->willReturn('Title_indexerOne');

dev/tests/integration/testsuite/Magento/Setup/Model/ObjectManagerProviderTest.php

+1-7
Original file line numberDiff line numberDiff line change
@@ -20,16 +20,10 @@ class ObjectManagerProviderTest extends \PHPUnit_Framework_TestCase
2020
*/
2121
private $locator;
2222

23-
/**
24-
* @var \Magento\Framework\App\DeploymentConfig|\PHPUnit_Framework_MockObject_MockObject
25-
*/
26-
private $deploymentConfig;
27-
2823
protected function setUp()
2924
{
3025
$this->locator = $this->getMockForAbstractClass('Zend\ServiceManager\ServiceLocatorInterface');
31-
$this->deploymentConfig = $this->getMock('Magento\Framework\App\DeploymentConfig', [], [], '', false);
32-
$this->object = new ObjectManagerProvider($this->locator, $this->deploymentConfig);
26+
$this->object = new ObjectManagerProvider($this->locator);
3327
}
3428

3529
public function testGet()

0 commit comments

Comments
 (0)