We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
After PHPUnit has removed the possibility to
use withConsecutive
, which was used by thousand of UnitTests, developers need a replacement which is not offered in a
neat way at the moment.
Until this problem is solved directly in PHPUnit, this library offers a simple solution to use a replacement
of withConsecutive
again. The original solution posted here.
Installation
$ composer require --dev seec/phpunit-consecutive-params
Usage
declare(strict_types=1);
namespace Your\Namespace\For\Tests;
use SEEC\PhpUnit\Helper\ConsecutiveParams;
final class TestRunnerContextTest extends TestCase
{
use ConsecutiveParams;
...
public function test_it_can_use_consecutive_replacement(): void
{
$mock = $this->createMock(\stdClass::class);
$mock->expects($this->exactly(3))
->method('foo')
->with(...$this->withConsecutive(
['a', 'b'],
['c', 'd'],
['e', 'f']
));
}
Another example for automatic replacement in correctly formatted code:
<?php
->withConsecutive(
['a', 'b'],
['c', 'd'],
['e', 'f']
)
becomes
->with(...$this->withConsecutive(
['a', 'b'],
['c', 'd'],
['e', 'f']
))
If this post was enjoyable or useful for you, please share it! If you have comments, questions, or feedback, you can email my personal email. To get new posts, subscribe use the RSS feed.