File: DescribedAsTest.php

package info (click to toggle)
php-hamcrest 2.1.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,168 kB
  • sloc: php: 6,353; makefile: 14; sh: 9
file content (36 lines) | stat: -rw-r--r-- 1,075 bytes parent folder | download | duplicates (2)
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
<?php
namespace Hamcrest\Core;

class DescribedAsTest extends \Hamcrest\AbstractMatcherTestCase
{

    protected function createMatcher()
    {
        return \Hamcrest\Core\DescribedAs::describedAs('irrelevant', anything());
    }

    public function testOverridesDescriptionOfOtherMatcherWithThatPassedToConstructor()
    {
        $m1 = describedAs('m1 description', anything());
        $m2 = describedAs('m2 description', not(anything()));

        $this->assertDescription('m1 description', $m1);
        $this->assertDescription('m2 description', $m2);
    }

    public function testAppendsValuesToDescription()
    {
        $m = describedAs('value 1 = %0, value 2 = %1', anything(), 33, 97);

        $this->assertDescription('value 1 = <33>, value 2 = <97>', $m);
    }

    public function testDelegatesMatchingToAnotherMatcher()
    {
        $m1 = describedAs('irrelevant', anything());
        $m2 = describedAs('irrelevant', not(anything()));

        $this->assertTrue($m1->matches(new \stdClass()));
        $this->assertFalse($m2->matches('hi'));
    }
}