Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace BookingNamespace;
- // Override DateTime in current namespace for testing
- require_once "DateTime.class.php";
- require_once "../MyBookingObject.class.php";
- class MyBookingObjectTest extends \PHPUnit_Framework_TestCase
- {
- private $booking_object;
- /**
- * Create test subject before test
- */
- protected function setUp()
- {
- parent::setUp();
- DateTime::set_now("2014-04-02 16:15");
- $this->booking_object = new MyBookingObject();
- }
- /**
- * Reset custom time after test
- */
- protected function tearDown()
- {
- DateTime::reset();
- }
- /*
- * Test cases
- */
- public function testBookAndConfirm()
- {
- $token = $this->booking_object->book();
- $this->assertTrue($this->booking_object->confirm($token));
- }
- public function testBookAndConfirmThreeMinutesLater()
- {
- $token = $this->booking_object->book();
- DateTime::modify_now("+3 minutes");
- $this->assertTrue($this->booking_object->confirm($token));
- }
- public function testBookAndConfirmSixMinutesLater()
- {
- $token = $this->booking_object->book();
- DateTime::modify_now("+6 minutes");
- $this->assertFalse($this->booking_object->confirm($token));
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement