1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
<?php
namespace test\Mockery\Matcher;
use Mockery\Matcher\HasKey;
use PHPUnit\Framework\Attributes\Test;
use PHPUnit\Framework\TestCase;
class HasKeyTest extends TestCase
{
#[Test]
public function it_can_handle_a_non_array()
{
$matcher = new HasKey('dave');
$actual = null;
$this->assertFalse($matcher->match($actual));
}
#[Test]
public function it_matches_an_array()
{
$matcher = new HasKey('dave');
$actual = [
'foo' => 'bar',
'dave' => 123,
'bar' => 'baz',
];
$this->assertTrue($matcher->match($actual));
}
#[Test]
public function it_matches_an_array_like_object()
{
$matcher = new HasKey('dave');
$actual = new \ArrayObject([
'foo' => 'bar',
'dave' => 123,
'bar' => 'baz',
]);
$this->assertTrue($matcher->match($actual));
}
}
|