first commit
This commit is contained in:
82
vendor/hamcrest/hamcrest-php/tests/Hamcrest/UtilTest.php
vendored
Normal file
82
vendor/hamcrest/hamcrest-php/tests/Hamcrest/UtilTest.php
vendored
Normal file
@ -0,0 +1,82 @@
|
||||
<?php
|
||||
namespace Hamcrest;
|
||||
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
class UtilTest extends TestCase
|
||||
{
|
||||
|
||||
public function testWrapValueWithIsEqualLeavesMatchersUntouched()
|
||||
{
|
||||
$matcher = new \Hamcrest\Text\MatchesPattern('/fo+/');
|
||||
$newMatcher = \Hamcrest\Util::wrapValueWithIsEqual($matcher);
|
||||
$this->assertSame($matcher, $newMatcher);
|
||||
}
|
||||
|
||||
public function testWrapValueWithIsEqualWrapsPrimitive()
|
||||
{
|
||||
$matcher = \Hamcrest\Util::wrapValueWithIsEqual('foo');
|
||||
$this->assertInstanceOf('Hamcrest\Core\IsEqual', $matcher);
|
||||
$this->assertTrue($matcher->matches('foo'));
|
||||
}
|
||||
|
||||
public function testCheckAllAreMatchersAcceptsMatchers()
|
||||
{
|
||||
\Hamcrest\Util::checkAllAreMatchers(array(
|
||||
new \Hamcrest\Text\MatchesPattern('/fo+/'),
|
||||
new \Hamcrest\Core\IsEqual('foo'),
|
||||
));
|
||||
}
|
||||
|
||||
/**
|
||||
* @expectedException InvalidArgumentException
|
||||
*/
|
||||
public function testCheckAllAreMatchersFailsForPrimitive()
|
||||
{
|
||||
\Hamcrest\Util::checkAllAreMatchers(array(
|
||||
new \Hamcrest\Text\MatchesPattern('/fo+/'),
|
||||
'foo',
|
||||
));
|
||||
}
|
||||
|
||||
private function callAndAssertCreateMatcherArray($items)
|
||||
{
|
||||
$matchers = \Hamcrest\Util::createMatcherArray($items);
|
||||
$this->assertInternalType('array', $matchers);
|
||||
$this->assertSameSize($items, $matchers);
|
||||
foreach ($matchers as $matcher) {
|
||||
$this->assertInstanceOf('\Hamcrest\Matcher', $matcher);
|
||||
}
|
||||
|
||||
return $matchers;
|
||||
}
|
||||
|
||||
public function testCreateMatcherArrayLeavesMatchersUntouched()
|
||||
{
|
||||
$matcher = new \Hamcrest\Text\MatchesPattern('/fo+/');
|
||||
$items = array($matcher);
|
||||
$matchers = $this->callAndAssertCreateMatcherArray($items);
|
||||
$this->assertSame($matcher, $matchers[0]);
|
||||
}
|
||||
|
||||
public function testCreateMatcherArrayWrapsPrimitiveWithIsEqualMatcher()
|
||||
{
|
||||
$matchers = $this->callAndAssertCreateMatcherArray(array('foo'));
|
||||
$this->assertInstanceOf('Hamcrest\Core\IsEqual', $matchers[0]);
|
||||
$this->assertTrue($matchers[0]->matches('foo'));
|
||||
}
|
||||
|
||||
public function testCreateMatcherArrayDoesntModifyOriginalArray()
|
||||
{
|
||||
$items = array('foo');
|
||||
$this->callAndAssertCreateMatcherArray($items);
|
||||
$this->assertSame('foo', $items[0]);
|
||||
}
|
||||
|
||||
public function testCreateMatcherArrayUnwrapsSingleArrayElement()
|
||||
{
|
||||
$matchers = $this->callAndAssertCreateMatcherArray(array(array('foo')));
|
||||
$this->assertInstanceOf('Hamcrest\Core\IsEqual', $matchers[0]);
|
||||
$this->assertTrue($matchers[0]->matches('foo'));
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user