Issue #3417557 by longwave: Remove withConsecutive() in CronSuspendQueueDelayTest
parent
c794a0e0f3
commit
ae750411d1
|
@ -3296,11 +3296,6 @@ parameters:
|
|||
count: 1
|
||||
path: tests/Drupal/Tests/Core/Controller/ControllerResolverTest.php
|
||||
|
||||
-
|
||||
message: "#^Call to deprecated method withConsecutive\\(\\) of class PHPUnit\\\\Framework\\\\MockObject\\\\Builder\\\\InvocationMocker\\.$#"
|
||||
count: 3
|
||||
path: tests/Drupal/Tests/Core/Cron/CronSuspendQueueDelayTest.php
|
||||
|
||||
-
|
||||
message: """
|
||||
#^Call to deprecated method expectError\\(\\) of class PHPUnit\\\\Framework\\\\TestCase\\:
|
||||
|
|
|
@ -135,12 +135,12 @@ final class CronSuspendQueueDelayTest extends UnitTestCase {
|
|||
->setConstructorArgs($this->cronConstructorArguments)
|
||||
->getMock();
|
||||
|
||||
$cron->expects($this->exactly(2))
|
||||
$delays = [2000000, 3000000];
|
||||
$cron->expects($this->exactly(count($delays)))
|
||||
->method('usleep')
|
||||
->withConsecutive(
|
||||
[$this->equalTo(2000000)],
|
||||
[$this->equalTo(3000000)],
|
||||
);
|
||||
->with($this->callback(function (int $delay) use (&$delays): bool {
|
||||
return array_shift($delays) === $delay;
|
||||
}));
|
||||
|
||||
$queueManager->expects($this->once())
|
||||
->method('getDefinitions')
|
||||
|
@ -391,19 +391,22 @@ final class CronSuspendQueueDelayTest extends UnitTestCase {
|
|||
['test_worker_d', [], $this->workerA],
|
||||
]);
|
||||
|
||||
$this->workerA->expects($this->exactly(6))
|
||||
$queues = [
|
||||
// All queues are executed in sequence of definition:
|
||||
'test_data_from_queue_a',
|
||||
'test_data_from_queue_b',
|
||||
'test_data_from_queue_c',
|
||||
'test_data_from_queue_d',
|
||||
// Queue C is executed again, and before queue B.
|
||||
'test_data_from_queue_c',
|
||||
// Queue B is executed again, after queue C since its delay was longer.
|
||||
'test_data_from_queue_b',
|
||||
];
|
||||
$this->workerA->expects($this->exactly(count($queues)))
|
||||
->method('processItem')
|
||||
->withConsecutive(
|
||||
// All queues are executed in sequence of definition:
|
||||
[$this->equalTo('test_data_from_queue_a')],
|
||||
[$this->equalTo('test_data_from_queue_b')],
|
||||
[$this->equalTo('test_data_from_queue_c')],
|
||||
[$this->equalTo('test_data_from_queue_d')],
|
||||
// Queue C is executed again, and before queue B.
|
||||
[$this->equalTo('test_data_from_queue_c')],
|
||||
// Queue B is executed again, after queue C since its delay was longer.
|
||||
[$this->equalTo('test_data_from_queue_b')],
|
||||
)
|
||||
->with($this->callback(function ($queue) use (&$queues): bool {
|
||||
return array_shift($queues) === $queue;
|
||||
}))
|
||||
->willReturnOnConsecutiveCalls(
|
||||
NULL,
|
||||
$this->throwException(new SuspendQueueException('', 0, NULL, 16.0)),
|
||||
|
@ -425,21 +428,19 @@ final class CronSuspendQueueDelayTest extends UnitTestCase {
|
|||
return (float) $currentTime;
|
||||
});
|
||||
|
||||
$cron->expects($this->exactly(2))
|
||||
$delays = [
|
||||
// Expect to wait for 8 seconds, then accelerate time by 4 seconds.
|
||||
4, 8000000,
|
||||
// SuspendQueueException requests to delay by 16 seconds, but 4 seconds
|
||||
// have passed above, so there are just 12 seconds remaining:
|
||||
0, 12000000,
|
||||
];
|
||||
$cron->expects($this->exactly(count($delays) / 2))
|
||||
->method('usleep')
|
||||
->withConsecutive(
|
||||
// Expect to wait for 8 seconds.
|
||||
[
|
||||
$this->callback(function (int $microseconds) use (&$currentTime) {
|
||||
// Accelerate time by 4 seconds.
|
||||
$currentTime += 4;
|
||||
return $microseconds === 8000000;
|
||||
}),
|
||||
],
|
||||
// SuspendQueueException requests to delay by 16 seconds, but 4 seconds
|
||||
// have passed above, so there are just 12 seconds remaining:
|
||||
[$this->equalTo(12000000)],
|
||||
);
|
||||
->with($this->callback(function (int $delay) use (&$currentTime, &$delays): bool {
|
||||
$currentTime += array_shift($delays);
|
||||
return array_shift($delays) === $delay;
|
||||
}));
|
||||
|
||||
$cron->run();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue