for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php declare(strict_types=1);
namespace Pinepain\ObjectMaps\Tests;
use Pinepain\ObjectMaps\ObjectMap;
use PHPUnit\Framework\TestCase;
use stdClass;
class ObjectMapTest extends TestCase
{
public function testPutNotAnObjectFails()
$map = new ObjectMap();
$map->put('foo', 'bar');
'foo'
string
object
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);
'bar'
}
public function testPutAndGet()
$key = new stdClass();
$value = new stdClass();
$map->put($key, $value);
$this->assertSame($value, $map->get($key));
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: