for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace SfCod\QueueBundle\Tests\Event;
use Exception;
use PHPUnit\Framework\TestCase;
use SfCod\QueueBundle\Event\JobFailedEvent;
use SfCod\QueueBundle\Job\JobContractInterface;
use Symfony\Contracts\EventDispatcher\Event;
/**
* Class JobFailedEventTest
*
* @author Virchenko Maksim <[email protected]>
* @package SfCod\QueueBundle\Tests\Event
*/
class JobFailedEventTest extends TestCase
{
* Test event
public function testEvent()
$message = uniqid('message_');
$connectionName = uniqid('connection_');
$job = $this->createMock(JobContractInterface::class);
$exception = new Exception($message);
$event = new JobFailedEvent($connectionName, $job, $exception);
$job
object<PHPUnit\Framework\MockObject\MockObject>
object<SfCod\QueueBundle...b\JobContractInterface>
It seems like the type of the argument is not accepted by the function/method which you are calling.
In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.
We suggest to add an explicit type cast like in the following example:
function acceptsInteger($int) { } $x = '123'; // string "123" // Instead of acceptsInteger($x); // we recommend to use acceptsInteger((integer) $x);
self::assertInstanceOf(Event::class, $event);
self::assertEquals($connectionName, $event->getConnectionName());
self::assertEquals($job, $event->getJob());
self::assertEquals($exception, $event->getException());
self::assertEquals($exception->getMessage(), $event->getException()->getMessage());
}
It seems like the type of the argument is not accepted by the function/method which you are calling.
In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.
We suggest to add an explicit type cast like in the following example: