Skip to content

Commit 490a267

Browse files
committed
Updated test to use onlyMethods() instead of setMethods() to prepare for PHPUnit 9. Dropped support for PHP 7.1.
1 parent c292d0d commit 490a267

File tree

3 files changed

+21
-43
lines changed

3 files changed

+21
-43
lines changed

composer.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,15 @@
1313
],
1414
"minimum-stability": "stable",
1515
"require": {
16-
"php": "^7.1",
16+
"php": "^7.2",
1717
"symfony/process": "^3.0 || ^4.0 || ^5.0"
1818
},
1919
"require-dev": {
2020
"bluepsyduck/test-helper": "^1.0",
2121
"phpstan/phpstan": "^0.12",
2222
"phpstan/phpstan-phpunit": "^0.12",
2323
"phpstan/phpstan-strict-rules": "^0.12",
24-
"phpunit/phpunit": "^7.3",
24+
"phpunit/phpunit": "^8.0 || ^9.0",
2525
"rregeer/phpunit-coverage-check": "^0.3",
2626
"squizlabs/php_codesniffer": "^3.3"
2727
},

phpunit.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" ?>
22
<phpunit colors="true">
33
<testsuites>
4-
<testsuite name="BluePsyduck\SymfonyProcessManager">
4+
<testsuite name="unit-test">
55
<directory>test/src</directory>
66
</testsuite>
77
</testsuites>
@@ -10,4 +10,4 @@
1010
<directory suffix=".php">src</directory>
1111
</whitelist>
1212
</filter>
13-
</phpunit>
13+
</phpunit>

test/src/ProcessManagerTest.php

Lines changed: 17 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66

77
use BluePsyduck\TestHelper\ReflectionTrait;
88
use BluePsyduck\SymfonyProcessManager\ProcessManager;
9-
use PHPUnit\Framework\MockObject\MockObject;
109
use PHPUnit\Framework\TestCase;
1110
use ReflectionException;
1211
use Symfony\Component\Process\Exception\ProcessTimedOutException;
@@ -49,9 +48,8 @@ public function testSetNumberOfParallelProcesses(): void
4948
{
5049
$numberOfParallelProcesses = 42;
5150

52-
/* @var ProcessManager|MockObject $manager */
5351
$manager = $this->getMockBuilder(ProcessManager::class)
54-
->setMethods(['executeNextPendingProcess'])
52+
->onlyMethods(['executeNextPendingProcess'])
5553
->setConstructorArgs([])
5654
->getMock();
5755
$manager->expects($this->once())
@@ -175,7 +173,6 @@ public function provideInvokeCallback(): array
175173
*/
176174
public function testInvokeCallback(bool $withCallback): void
177175
{
178-
/* @var Process $process */
179176
$process = $this->createMock(Process::class);
180177

181178
$callback = null;
@@ -200,7 +197,6 @@ public function testInvokeCallback(bool $withCallback): void
200197
*/
201198
public function testAddProcess(): void
202199
{
203-
/* @var Process $process */
204200
$process = $this->createMock(Process::class);
205201
$callback = 'strval';
206202
$env = ['abc' => 'def'];
@@ -213,9 +209,8 @@ public function testAddProcess(): void
213209
[$process, $callback, $env],
214210
];
215211

216-
/* @var ProcessManager|MockObject $manager */
217212
$manager = $this->getMockBuilder(ProcessManager::class)
218-
->setMethods(['executeNextPendingProcess', 'checkRunningProcesses'])
213+
->onlyMethods(['executeNextPendingProcess', 'checkRunningProcesses'])
219214
->disableOriginalConstructor()
220215
->getMock();
221216
$manager->expects($this->once())
@@ -257,11 +252,7 @@ public function testExecuteNextPendingProcess(?int $pid, bool $expectRunningProc
257252
$processStartCallback = 'intval';
258253
$env = ['foo' => 'bar'];
259254

260-
/* @var Process|MockObject $process */
261-
$process = $this->getMockBuilder(Process::class)
262-
->setMethods(['start', 'getPid'])
263-
->disableOriginalConstructor()
264-
->getMock();
255+
$process = $this->createMock(Process::class);
265256
$process->expects($this->once())
266257
->method('start')
267258
->with($callback, $env);
@@ -280,9 +271,13 @@ public function testExecuteNextPendingProcess(?int $pid, bool $expectRunningProc
280271
$runningProcesses = [1337 => 'ghi'];
281272
$expectedRunningProcesses = $expectRunningProcess ? [1337 => 'ghi', 42 => $process] : ['1337' => 'ghi'];
282273

283-
/* @var ProcessManager|MockObject $manager */
284274
$manager = $this->getMockBuilder(ProcessManager::class)
285-
->setMethods(['canExecuteNextPendingRequest', 'sleep', 'invokeCallback', 'checkRunningProcess'])
275+
->onlyMethods([
276+
'canExecuteNextPendingRequest',
277+
'sleep',
278+
'invokeCallback',
279+
'checkRunningProcess',
280+
])
286281
->setConstructorArgs([0, 0, $processStartDelay])
287282
->getMock();
288283
$manager->expects($this->once())
@@ -295,7 +290,6 @@ public function testExecuteNextPendingProcess(?int $pid, bool $expectRunningProc
295290
->method('checkRunningProcess')
296291
->with($pid, $process);
297292

298-
299293
$manager->expects($this->once())
300294
->method('invokeCallback')
301295
->with($processStartCallback, $process);
@@ -354,14 +348,11 @@ public function testCanExecuteNextPendingRequest(
354348
*/
355349
public function testCheckRunningProcesses(): void
356350
{
357-
/* @var Process $process1 */
358351
$process1 = $this->createMock(Process::class);
359-
/* @var Process $process2 */
360352
$process2 = $this->createMock(Process::class);
361353

362-
/* @var ProcessManager|MockObject $manager */
363354
$manager = $this->getMockBuilder(ProcessManager::class)
364-
->setMethods(['checkRunningProcess'])
355+
->onlyMethods(['checkRunningProcess'])
365356
->disableOriginalConstructor()
366357
->getMock();
367358
$manager->expects($this->exactly(2))
@@ -405,29 +396,22 @@ public function testCheckRunningProcess(
405396
bool $expectFinish,
406397
bool $expectUnset
407398
): void {
408-
/* @var Process|MockObject $process */
409-
$process = $this->getMockBuilder(Process::class)
410-
->setMethods(['isRunning'])
411-
->disableOriginalConstructor()
412-
->getMock();
413-
$process->expects($this->once())
399+
$process = $this->createMock(Process::class);
400+
$process->expects($this->any())
414401
->method('isRunning')
415402
->willReturn($resultIsRunning);
416403

417-
/* @var Process $process2 */
418404
$process2 = $this->createMock(Process::class);
419405
$runningProcesses = [42 => $process, 1337 => $process2];
420406
$expectedRunningProcesses = $expectUnset ? [1337 => $process2] : [42 => $process, 1337 => $process2];
421407

422-
/* @var ProcessManager|MockObject $manager */
423408
$manager = $this->getMockBuilder(ProcessManager::class)
424-
->setMethods(['checkProcessTimeout', 'invokeCallback', 'executeNextPendingProcess'])
409+
->onlyMethods(['checkProcessTimeout', 'invokeCallback', 'executeNextPendingProcess'])
425410
->disableOriginalConstructor()
426411
->getMock();
427412
$manager->expects($this->once())
428413
->method('checkProcessTimeout')
429-
->with($process)
430-
->willReturn(false);
414+
->with($process);
431415
$manager->expects($this->exactly($expectFinish ? 2 : 1))
432416
->method('invokeCallback')
433417
->withConsecutive(
@@ -466,11 +450,7 @@ public function provideCheckProcessTimeout(): array
466450
*/
467451
public function testCheckProcessTimeout(bool $throwException, bool $expectInvoke): void
468452
{
469-
/* @var Process|MockObject $process */
470-
$process = $this->getMockBuilder(Process::class)
471-
->setMethods(['checkTimeout'])
472-
->disableOriginalConstructor()
473-
->getMock();
453+
$process = $this->createMock(Process::class);
474454

475455
if ($throwException) {
476456
$process->expects($this->once())
@@ -481,9 +461,8 @@ public function testCheckProcessTimeout(bool $throwException, bool $expectInvoke
481461
->method('checkTimeout');
482462
}
483463

484-
/* @var ProcessManager|MockObject $manager */
485464
$manager = $this->getMockBuilder(ProcessManager::class)
486-
->setMethods(['invokeCallback'])
465+
->onlyMethods(['invokeCallback'])
487466
->disableOriginalConstructor()
488467
->getMock();
489468
$manager->expects($expectInvoke ? $this->once() : $this->never())
@@ -502,9 +481,8 @@ public function testWaitForAllProcesses(): void
502481
{
503482
$pollInterval = 1337;
504483

505-
/* @var ProcessManager|MockObject $manager */
506484
$manager = $this->getMockBuilder(ProcessManager::class)
507-
->setMethods(['hasUnfinishedProcesses', 'sleep', 'checkRunningProcesses'])
485+
->onlyMethods(['hasUnfinishedProcesses', 'sleep', 'checkRunningProcesses'])
508486
->setConstructorArgs([42, $pollInterval, 21])
509487
->getMock();
510488
$manager->expects($this->exactly(3))

0 commit comments

Comments
 (0)