Exemplo n.º 1
0
 public function testOverlaps()
 {
     $dr = new DateRange(new DateTime('2006-07-08'), new DateTime('2006-09-05'));
     $this->assertTrue($dr->overlaps(new DateRange(new DateTime('2006-07-08'), new DateTime('2006-07-10'))));
     $this->assertTrue($dr->overlaps(new DateRange(new DateTime('2006-07-09'), new DateTime('2006-09-05'))));
     $this->assertTrue($dr->overlaps(new DateRange(new DateTime('2006-07-07'), new DateTime('2006-07-08'))));
     $this->assertTrue($dr->overlaps(new DateRange(new DateTime('2006-07-09'), new DateTime('2006-09-06'))));
     $this->assertFalse($dr->overlaps(new DateRange(new DateTime('2006-07-06'), new DateTime('2006-07-07'))));
 }
Exemplo n.º 2
0
 public static function createOverlappingDateRangeFilter(DateRange $range)
 {
     return function ($booking) use($range) {
         $bookingRange = new DateRange($booking->start, $booking->end);
         return $range->overlaps($bookingRange);
     };
 }