/** * Test the average lap */ public function testAverageLap() { // Get populated participant $participant = $this->getParticipantWithLaps(); //-- Run twice to test cache for ($i = 0; $i < 2; $i++) { // Get average lap $average_lap = $participant->getAverageLap(); // Validate $this->assertSame(134.0262, $average_lap->getTime()); $this->assertSame(array(42.321, 39.86, 51.8452), $average_lap->getSectorTimes()); $this->assertSame($participant, $average_lap->getParticipant()); $this->assertSame(array(), $average_lap->getAids()); $this->assertNull($average_lap->getNumber()); $this->assertNull($average_lap->getPosition()); $this->assertNull($average_lap->getElapsedSeconds()); // Get average lap excluding pitstop sectors and validate it $average_lap = $participant->getAverageLap(true); $this->assertSame(132.6853, $average_lap->getTime()); } // Validate empty participant $participant = new Participant(); $this->assertNull($participant->getAverageLap()); // Validate participant with one partial lap $participant = new Participant(); $lap = new Lap(); $this->assertNull($participant->addLap($lap->setSectorTimes(array(14)))->getAverageLap()); }