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

DoubleComparatorTest.php (3245B)


      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 /**
     14  * @coversDefaultClass SebastianBergmann\Comparator\DoubleComparator
     15  *
     16  */
     17 class DoubleComparatorTest extends \PHPUnit_Framework_TestCase
     18 {
     19     private $comparator;
     20 
     21     protected function setUp()
     22     {
     23         $this->comparator = new DoubleComparator;
     24     }
     25 
     26     public function acceptsSucceedsProvider()
     27     {
     28         return array(
     29           array(0, 5.0),
     30           array(5.0, 0),
     31           array('5', 4.5),
     32           array(1.2e3, 7E-10),
     33           array(3, acos(8)),
     34           array(acos(8), 3),
     35           array(acos(8), acos(8))
     36         );
     37     }
     38 
     39     public function acceptsFailsProvider()
     40     {
     41         return array(
     42           array(5, 5),
     43           array('4.5', 5),
     44           array(0x539, 02471),
     45           array(5.0, false),
     46           array(null, 5.0)
     47         );
     48     }
     49 
     50     public function assertEqualsSucceedsProvider()
     51     {
     52         return array(
     53           array(2.3, 2.3),
     54           array('2.3', 2.3),
     55           array(5.0, 5),
     56           array(5, 5.0),
     57           array(5.0, '5'),
     58           array(1.2e3, 1200),
     59           array(2.3, 2.5, 0.5),
     60           array(3, 3.05, 0.05),
     61           array(1.2e3, 1201, 1),
     62           array((string)(1/3), 1 - 2/3),
     63           array(1/3, (string)(1 - 2/3))
     64         );
     65     }
     66 
     67     public function assertEqualsFailsProvider()
     68     {
     69         return array(
     70           array(2.3, 4.2),
     71           array('2.3', 4.2),
     72           array(5.0, '4'),
     73           array(5.0, 6),
     74           array(1.2e3, 1201),
     75           array(2.3, 2.5, 0.2),
     76           array(3, 3.05, 0.04),
     77           array(3, acos(8)),
     78           array(acos(8), 3),
     79           array(acos(8), acos(8))
     80         );
     81     }
     82 
     83     /**
     84      * @covers       ::accepts
     85      * @dataProvider acceptsSucceedsProvider
     86      */
     87     public function testAcceptsSucceeds($expected, $actual)
     88     {
     89         $this->assertTrue(
     90           $this->comparator->accepts($expected, $actual)
     91         );
     92     }
     93 
     94     /**
     95      * @covers       ::accepts
     96      * @dataProvider acceptsFailsProvider
     97      */
     98     public function testAcceptsFails($expected, $actual)
     99     {
    100         $this->assertFalse(
    101           $this->comparator->accepts($expected, $actual)
    102         );
    103     }
    104 
    105     /**
    106      * @covers       ::assertEquals
    107      * @dataProvider assertEqualsSucceedsProvider
    108      */
    109     public function testAssertEqualsSucceeds($expected, $actual, $delta = 0.0)
    110     {
    111         $exception = null;
    112 
    113         try {
    114             $this->comparator->assertEquals($expected, $actual, $delta);
    115         }
    116 
    117         catch (ComparisonFailure $exception) {
    118         }
    119 
    120         $this->assertNull($exception, 'Unexpected ComparisonFailure');
    121     }
    122 
    123     /**
    124      * @covers       ::assertEquals
    125      * @dataProvider assertEqualsFailsProvider
    126      */
    127     public function testAssertEqualsFails($expected, $actual, $delta = 0.0)
    128     {
    129         $this->setExpectedException(
    130           'SebastianBergmann\\Comparator\\ComparisonFailure', 'matches expected'
    131         );
    132         $this->comparator->assertEquals($expected, $actual, $delta);
    133     }
    134 }