public function testThrowsWhenAddingAvailabilitiesBeforeDateRange() { $expectedAvailability = new IntellitimeAvailability(); $expectedAvailability->setDate(date_make_date('2011-07-13')); $page = $this->build_from_page('availability-1-day.txt'); try { $page->setAvailabilities(array($expectedAvailability)); $this->fail(); } catch (InvalidArgumentException $e) { $this->assertNotNull($e, 'Expected exception'); } }
function testGetDateDoesNotReturnSameObjectAsSet() { $this->availability->setDate($this->expected_date); $this->assertNotSame($this->availability->getDate(), $this->expected_date); }
public function testNonConsecutiveRangesBecomesThreeAvailabilities() { $expected_ia = new IntellitimeAvailability(date_make_date('2011-06-23'), 'abc_form_id'); $expected_ia->setDay(TRUE)->setEvening(TRUE)->setNight(TRUE); $factory = new IntellitimeAvailabilityFactory($this->store, "08:00-11:59", "12:00-17:59", "18:00-01:00"); $availabilities = $factory->createAvailabilities($expected_ia); $this->assertEquals(3, count($availabilities)); $this->assertEquals('2011-06-23 08:00:00', $availabilities[0]->getStartTime()->format('Y-m-d H:i:s')); $this->assertEquals('2011-06-23 11:59:00', $availabilities[0]->getEndTime()->format('Y-m-d H:i:s')); $this->assertEquals('2011-06-23 12:00:00', $availabilities[1]->getStartTime()->format('Y-m-d H:i:s')); $this->assertEquals('2011-06-23 17:59:00', $availabilities[1]->getEndTime()->format('Y-m-d H:i:s')); $this->assertEquals('2011-06-23 18:00:00', $availabilities[2]->getStartTime()->format('Y-m-d H:i:s')); $this->assertEquals('2011-06-24 01:00:00', $availabilities[2]->getEndTime()->format('Y-m-d H:i:s')); }