public function testFilteredChange()
 {
     $chain = new \Application\AppointmentChain();
     $item1 = new \Application\AppointmentItem(self::$arrayToTest1);
     $item2 = new \Application\AppointmentItem(self::$arrayToTest2);
     $item3 = new \Application\AppointmentItem(self::$arrayToTest3);
     $chain->add($item1);
     $chain->add($item2);
     $chain->add($item3);
     $chain->applyFilter(new \DateTime('2015-10-15 11:45:00'));
     $bc = new \Application\BookingChange();
     $bc->setStart('15:00');
     $bc->setEnd('16:25');
     $bc->setEmpId(3);
     $bc->setNotes('new notes');
     $chain->applyChange($bc);
     $this->assertEquals(2, $item1->getEmpId());
     $this->assertEquals(3, $item2->getEmpId());
     $this->assertEquals(3, $item3->getEmpId());
     $this->assertEquals('some notes', $item1->getNotes());
     $this->assertEquals('new notes', $item2->getNotes());
     $this->assertEquals('new notes', $item3->getNotes());
     $this->assertEquals(new \DateTime('2015-10-15 10:25:00'), $item1->getTimeStart());
     $this->assertEquals(new \DateTime('2015-10-16 15:00:00'), $item2->getTimeStart());
     $this->assertEquals(new \DateTime('2015-10-17 15:00:00'), $item3->getTimeStart());
     $this->assertEquals(new \DateTime('2015-10-15 11:45:00'), $item1->getTimeEnd());
     $this->assertEquals(new \DateTime('2015-10-16 16:25:00'), $item2->getTimeEnd());
     $this->assertEquals(new \DateTime('2015-10-17 16:25:00'), $item3->getTimeEnd());
 }
示例#2
0
 public function testTimeValidator()
 {
     $bc = new \Application\BookingChange();
     $bc->setStart('08:00');
     $bc->setEnd('09:00');
     $this->assertTrue($bc->isTimeValid());
     $bc->setEnd('00:00');
     $this->assertTrue($bc->isTimeValid());
     $bc->setEnd('00:01');
     $this->assertFalse($bc->isTimeValid());
     $bc->setStart('25:00');
     $bc->setEnd('26:00');
     $this->assertFalse($bc->isTimeValid());
     $bc->setStart('08:00');
     $bc->setEnd('26:00');
     $this->assertFalse($bc->isTimeValid());
 }