Exemple #1
0
 protected function addTransferTrain(Train $train)
 {
     if ($this->getDepartureTrain()->getArrivalTime() > $train->getDepartureTime()) {
         throw new OutOfBoundsException("Transfer train departs before first train arrives");
     }
     $this->getTransferTrains()->append($train);
 }
Exemple #2
0
 protected function createTransferTrain(Train $train)
 {
     $departureTransferDateTime = clone $train->getArrivalTime();
     $departureTransferDateTime = $departureTransferDateTime->add(new \DateInterval("PT10M"));
     $arrivalTransferDateTime = clone $departureTransferDateTime;
     $arrivalTransferDateTime = $arrivalTransferDateTime->add(new \DateInterval("PT55M"));
     return new Train($train->getLine(), $departureTransferDateTime, $arrivalTransferDateTime);
 }
Exemple #3
0
 protected function isDepartureTimeEqual(Train $train)
 {
     return $train->getDepartureTime() == $this->getDepartureTime();
 }
Exemple #4
0
 public function testCompareWithSameDepartureAndArrivalTimes()
 {
     $train = new Train("C1", new \DateTime("2014-01-10 11:00:00"), new \DateTime("2014-01-10 11:30:00"));
     $this->assertEquals(0, $train->compareWith($train));
 }