Subversion Repositories web.creative

Rev

Details | Last modification | View Log

Rev Author Line No. Line
1 mjordaan 1
<?php
2
/*
3
 * This file is part of PHPUnit.
4
 *
5
 * (c) Sebastian Bergmann <sebastian@phpunit.de>
6
 *
7
 * For the full copyright and license information, please view the LICENSE
8
 * file that was distributed with this source code.
9
 */
10
 
11
/**
12
 * Constraint that asserts that the string it is evaluated for ends with a given
13
 * suffix.
14
 */
15
class PHPUnit_Framework_Constraint_StringEndsWith extends PHPUnit_Framework_Constraint
16
{
17
    /**
18
     * @var string
19
     */
20
    protected $suffix;
21
 
22
    /**
23
     * @param string $suffix
24
     */
25
    public function __construct($suffix)
26
    {
27
        parent::__construct();
28
        $this->suffix = $suffix;
29
    }
30
 
31
    /**
32
     * Evaluates the constraint for parameter $other. Returns true if the
33
     * constraint is met, false otherwise.
34
     *
35
     * @param mixed $other Value or object to evaluate.
36
     *
37
     * @return bool
38
     */
39
    protected function matches($other)
40
    {
41
        return substr($other, 0 - strlen($this->suffix)) == $this->suffix;
42
    }
43
 
44
    /**
45
     * Returns a string representation of the constraint.
46
     *
47
     * @return string
48
     */
49
    public function toString()
50
    {
51
        return 'ends with "' . $this->suffix . '"';
52
    }
53
}