Example #1
0
 public function testDifference()
 {
     $start = Timer::getMicroTime();
     $diff = 0.04525;
     $epsilon = 0.0001;
     $end = $start + $diff;
     $this->assertInternalType('float', Timer::difference($start, $end));
     $this->assertTrue(abs(Timer::difference($start, $end) - $diff) < $epsilon);
     // test precision
     foreach (array(0, 1, 2, 5, 8, 10, 20) as $precision) {
         $difference = Timer::difference($start, $end, $precision);
         $diffArray = explode('.', strval($difference));
         if (count($diffArray) === 2) {
             $this->assertTrue(strlen(end($diffArray)) <= $precision, 'Failed asserting proper precision length for precision of ' . $precision . ' (' . $difference . ' given).');
         }
     }
 }