Skip to content

Commit 927e063

Browse files
committed
Reduce sleep time for Unit Test of Consumer to 0 seconds
1 parent 9400c1e commit 927e063

File tree

1 file changed

+32
-21
lines changed

1 file changed

+32
-21
lines changed

app/code/Magento/MessageQueue/Test/Unit/Model/ConsumerRunnerTest.php

Lines changed: 32 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,27 @@
33
* Copyright © Magento, Inc. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6+
declare(strict_types=1);
67

78
namespace Magento\MessageQueue\Test\Unit\Model;
89

9-
use Magento\Framework\MessageQueue\ConsumerInterface;
10-
use Magento\MessageQueue\Model\ConsumerRunner;
10+
use Magento\Framework\App\MaintenanceMode;
1111
use Magento\Framework\Exception\LocalizedException;
12+
use Magento\Framework\MessageQueue\ConsumerFactory;
13+
use Magento\Framework\MessageQueue\ConsumerInterface;
1214
use Magento\Framework\Phrase;
15+
use Magento\Framework\TestFramework\Unit\Helper\ObjectManager;
16+
use Magento\MessageQueue\Model\ConsumerRunner;
17+
use PHPUnit\Framework\MockObject\MockObject;
18+
use PHPUnit\Framework\TestCase;
1319

14-
/**
15-
* Unit tests for consumer runner
16-
*/
17-
class ConsumerRunnerTest extends \PHPUnit\Framework\TestCase
20+
class ConsumerRunnerTest extends TestCase
1821
{
19-
/** @var \Magento\Framework\TestFramework\Unit\Helper\ObjectManager */
22+
const STUB_SLEEP_INTERVAL = 0;
23+
24+
/**
25+
* @var ObjectManager
26+
*/
2027
private $objectManager;
2128

2229
/**
@@ -25,12 +32,12 @@ class ConsumerRunnerTest extends \PHPUnit\Framework\TestCase
2532
private $consumerRunner;
2633

2734
/**
28-
* @var \Magento\Framework\MessageQueue\ConsumerFactory|\PHPUnit_Framework_MockObject_MockObject
35+
* @var ConsumerFactory|MockObject
2936
*/
3037
private $consumerFactoryMock;
3138

3239
/**
33-
* @var \Magento\Framework\App\MaintenanceMode|\PHPUnit_Framework_MockObject_MockObject
40+
* @var MaintenanceMode|MockObject
3441
*/
3542
private $maintenanceModeMock;
3643

@@ -39,21 +46,23 @@ class ConsumerRunnerTest extends \PHPUnit\Framework\TestCase
3946
*/
4047
protected function setUp()
4148
{
42-
$this->objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
43-
$this->consumerFactoryMock = $this->getMockBuilder(\Magento\Framework\MessageQueue\ConsumerFactory::class)
49+
$this->objectManager = new ObjectManager($this);
50+
51+
$this->consumerFactoryMock = $this->getMockBuilder(ConsumerFactory::class)
4452
->disableOriginalConstructor()
4553
->getMock();
46-
$this->maintenanceModeMock = $this->getMockBuilder(\Magento\Framework\App\MaintenanceMode::class)
54+
$this->maintenanceModeMock = $this->getMockBuilder(MaintenanceMode::class)
4755
->disableOriginalConstructor()
4856
->getMock();
57+
4958
$this->consumerRunner = $this->objectManager->getObject(
50-
\Magento\MessageQueue\Model\ConsumerRunner::class,
59+
ConsumerRunner::class,
5160
[
5261
'consumerFactory' => $this->consumerFactoryMock,
53-
'maintenanceMode' => $this->maintenanceModeMock
62+
'maintenanceMode' => $this->maintenanceModeMock,
63+
'maintenanceSleepInterval' => self::STUB_SLEEP_INTERVAL
5464
]
5565
);
56-
parent::setUp();
5766
}
5867

5968
/**
@@ -64,8 +73,8 @@ protected function setUp()
6473
public function testMagicMethod()
6574
{
6675
$isMaintenanceModeOn = false;
67-
/** @var ConsumerInterface|\PHPUnit_Framework_MockObject_MockObject $consumerMock */
68-
$consumerMock = $this->getMockBuilder(\Magento\Framework\MessageQueue\ConsumerInterface::class)->getMock();
76+
/** @var ConsumerInterface|MockObject $consumerMock */
77+
$consumerMock = $this->getMockBuilder(ConsumerInterface::class)->getMock();
6978
$consumerMock->expects($this->once())->method('process');
7079
$consumerName = 'someConsumerName';
7180
$this->consumerFactoryMock
@@ -81,12 +90,13 @@ public function testMagicMethod()
8190
/**
8291
* Ensure that exception will be thrown if requested magic method does not correspond to any declared consumer.
8392
*
84-
* @expectedException \Magento\Framework\Exception\LocalizedException
85-
* @expectedExceptionMessage "nonDeclaredConsumer" callback method specified in crontab.xml must
8693
* @return void
8794
*/
8895
public function testMagicMethodNoRelatedConsumer()
8996
{
97+
$this->expectException(LocalizedException::class);
98+
$this->expectExceptionMessage('"nonDeclaredConsumer" callback method specified in crontab.xml must');
99+
90100
$consumerName = 'nonDeclaredConsumer';
91101
$this->consumerFactoryMock
92102
->expects($this->once())
@@ -105,8 +115,9 @@ public function testMagicMethodNoRelatedConsumer()
105115
public function testMagicMethodMaintenanceModeIsOn()
106116
{
107117
$isMaintenanceModeOn = true;
108-
/** @var ConsumerInterface|\PHPUnit_Framework_MockObject_MockObject $consumerMock */
109-
$consumerMock = $this->getMockBuilder(\Magento\Framework\MessageQueue\ConsumerInterface::class)->getMock();
118+
119+
/** @var ConsumerInterface|MockObject $consumerMock */
120+
$consumerMock = $this->getMockBuilder(ConsumerInterface::class)->getMock();
110121
$consumerMock->expects($this->never())->method('process');
111122
$consumerName = 'someConsumerName';
112123
$this->consumerFactoryMock

0 commit comments

Comments
 (0)