public function testElapsedStepsWithPause()
 {
     $this->stopWatch->start();
     usleep(2500);
     $this->stopWatch->pause();
     usleep(32000);
     $this->stopWatch->step('step1');
     usleep(32000);
     $this->stopWatch->resume();
     usleep(4000);
     $this->stopWatch->pause();
     usleep(32000);
     $this->stopWatch->resume();
     usleep(4000);
     $this->stopWatch->step('step2');
     usleep(8000);
     $this->stopWatch->pause();
     usleep(32000);
     $this->stopWatch->step('step3');
     usleep(32000);
     $this->stopWatch->stop();
     $elapsedSteps = $this->stopWatch->getElapsedStepsMilliseconds();
     $this->assertCount(3, $elapsedSteps);
     $this->assertArrayHasKey('step1', $elapsedSteps);
     $this->assertArrayHasKey('step2', $elapsedSteps);
     $this->assertArrayHasKey('step3', $elapsedSteps);
     $this->assertGreaterThanOrEqual(2, $elapsedSteps['step1']);
     $this->assertLessThan(10, $elapsedSteps['step1']);
     $this->assertGreaterThanOrEqual(10, $elapsedSteps['step2']);
     $this->assertLessThan(18, $elapsedSteps['step2']);
     $this->assertGreaterThanOrEqual(18, $elapsedSteps['step3']);
     $this->assertLessThan(26, $elapsedSteps['step3']);
 }