gluon-web-remote

Web remote Administration for big size of gluon routers
git clone git://archive.git.mtrnord.blog/MTRNord/gluon-web-remote.git
Log | Files | Refs | README

ExceptionComparatorTest.php (3648B)


      1 <?php
      2 /*
      3  * This file is part of the Comparator package.
      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 namespace SebastianBergmann\Comparator;
     12 
     13 use \Exception;
     14 use \RuntimeException;
     15 
     16 /**
     17  * @coversDefaultClass SebastianBergmann\Comparator\ExceptionComparator
     18  *
     19  */
     20 class ExceptionComparatorTest extends \PHPUnit_Framework_TestCase
     21 {
     22     private $comparator;
     23 
     24     protected function setUp()
     25     {
     26         $this->comparator = new ExceptionComparator;
     27         $this->comparator->setFactory(new Factory);
     28     }
     29 
     30     public function acceptsSucceedsProvider()
     31     {
     32         return array(
     33           array(new Exception, new Exception),
     34           array(new RuntimeException, new RuntimeException),
     35           array(new Exception, new RuntimeException)
     36         );
     37     }
     38 
     39     public function acceptsFailsProvider()
     40     {
     41         return array(
     42           array(new Exception, null),
     43           array(null, new Exception),
     44           array(null, null)
     45         );
     46     }
     47 
     48     public function assertEqualsSucceedsProvider()
     49     {
     50         $exception1 = new Exception;
     51         $exception2 = new Exception;
     52 
     53         $exception3 = new RunTimeException('Error', 100);
     54         $exception4 = new RunTimeException('Error', 100);
     55 
     56         return array(
     57           array($exception1, $exception1),
     58           array($exception1, $exception2),
     59           array($exception3, $exception3),
     60           array($exception3, $exception4)
     61         );
     62     }
     63 
     64     public function assertEqualsFailsProvider()
     65     {
     66         $typeMessage = 'not instance of expected class';
     67         $equalMessage = 'Failed asserting that two objects are equal.';
     68 
     69         $exception1 = new Exception('Error', 100);
     70         $exception2 = new Exception('Error', 101);
     71         $exception3 = new Exception('Errors', 101);
     72 
     73         $exception4 = new RunTimeException('Error', 100);
     74         $exception5 = new RunTimeException('Error', 101);
     75 
     76         return array(
     77           array($exception1, $exception2, $equalMessage),
     78           array($exception1, $exception3, $equalMessage),
     79           array($exception1, $exception4, $typeMessage),
     80           array($exception2, $exception3, $equalMessage),
     81           array($exception4, $exception5, $equalMessage)
     82         );
     83     }
     84 
     85     /**
     86      * @covers       ::accepts
     87      * @dataProvider acceptsSucceedsProvider
     88      */
     89     public function testAcceptsSucceeds($expected, $actual)
     90     {
     91         $this->assertTrue(
     92           $this->comparator->accepts($expected, $actual)
     93         );
     94     }
     95 
     96     /**
     97      * @covers       ::accepts
     98      * @dataProvider acceptsFailsProvider
     99      */
    100     public function testAcceptsFails($expected, $actual)
    101     {
    102         $this->assertFalse(
    103           $this->comparator->accepts($expected, $actual)
    104         );
    105     }
    106 
    107     /**
    108      * @covers       ::assertEquals
    109      * @dataProvider assertEqualsSucceedsProvider
    110      */
    111     public function testAssertEqualsSucceeds($expected, $actual)
    112     {
    113         $exception = null;
    114 
    115         try {
    116             $this->comparator->assertEquals($expected, $actual);
    117         }
    118 
    119         catch (ComparisonFailure $exception) {
    120         }
    121 
    122         $this->assertNull($exception, 'Unexpected ComparisonFailure');
    123     }
    124 
    125     /**
    126      * @covers       ::assertEquals
    127      * @dataProvider assertEqualsFailsProvider
    128      */
    129     public function testAssertEqualsFails($expected, $actual, $message)
    130     {
    131         $this->setExpectedException(
    132           'SebastianBergmann\\Comparator\\ComparisonFailure', $message
    133         );
    134         $this->comparator->assertEquals($expected, $actual);
    135     }
    136 }