container); $taskCreation = new TaskCreationModel($this->container); $projectModel = new ProjectModel($this->container); $projectActivityModel = new ProjectActivityModel($this->container); $this->assertEquals(1, $projectModel->create(array('name' => 'P1'))); $this->assertEquals(1, $taskCreation->create(array('title' => 'Test', 'project_id' => 1))); $this->assertNotFalse($projectActivityModel->createEvent(1, 1, 1, TaskModel::EVENT_CREATE, array('task' => $taskFinder->getById(1)))); $query = $projectActivityModel->getQuery(); $filter = new ProjectActivityCreationDateFilter('today'); $filter->setDateParser($this->container['dateParser']); $filter->withQuery($query)->apply(); $events = $query->findAll(); $this->assertCount(1, $events); } public function testWithYesterday() { $taskFinder = new TaskFinderModel($this->container); $taskCreation = new TaskCreationModel($this->container); $projectModel = new ProjectModel($this->container); $projectActivityModel = new ProjectActivityModel($this->container); $this->assertEquals(1, $projectModel->create(array('name' => 'P1'))); $this->assertEquals(1, $taskCreation->create(array('title' => 'Test', 'project_id' => 1))); $this->assertNotFalse($projectActivityModel->createEvent(1, 1, 1, TaskModel::EVENT_CREATE, array('task' => $taskFinder->getById(1)))); $query = $projectActivityModel->getQuery(); $filter = new ProjectActivityCreationDateFilter('yesterday'); $filter->setDateParser($this->container['dateParser']); $filter->withQuery($query)->apply(); $events = $query->findAll(); $this->assertCount(0, $events); } public function testWithStrtotimeString() { $taskFinder = new TaskFinderModel($this->container); $taskCreation = new TaskCreationModel($this->container); $projectModel = new ProjectModel($this->container); $projectActivityModel = new ProjectActivityModel($this->container); $this->assertEquals(1, $projectModel->create(array('name' => 'P1'))); $this->assertEquals(1, $taskCreation->create(array('title' => 'Test', 'project_id' => 1))); $this->assertNotFalse($projectActivityModel->createEvent(1, 1, 1, TaskModel::EVENT_CREATE, array('task' => $taskFinder->getById(1)))); $query = $projectActivityModel->getQuery(); $filter = new ProjectActivityCreationDateFilter('<=last week'); $filter->setDateParser($this->container['dateParser']); $filter->withQuery($query)->apply(); $events = $query->findAll(); $this->assertCount(0, $events); } public function testWithIsoDate() { $taskFinder = new TaskFinderModel($this->container); $taskCreation = new TaskCreationModel($this->container); $projectModel = new ProjectModel($this->container); $projectActivityModel = new ProjectActivityModel($this->container); $this->assertEquals(1, $projectModel->create(array('name' => 'P1'))); $this->assertEquals(1, $taskCreation->create(array('title' => 'Test', 'project_id' => 1))); $this->assertNotFalse($projectActivityModel->createEvent(1, 1, 1, TaskModel::EVENT_CREATE, array('task' => $taskFinder->getById(1)))); $query = $projectActivityModel->getQuery(); $filter = new ProjectActivityCreationDateFilter(date('Y-m-d')); $filter->setDateParser($this->container['dateParser']); $filter->withQuery($query)->apply(); $events = $query->findAll(); $this->assertCount(1, $events); } public function testWithOperatorAndIsoDate() { $taskFinder = new TaskFinderModel($this->container); $taskCreation = new TaskCreationModel($this->container); $projectModel = new ProjectModel($this->container); $projectActivityModel = new ProjectActivityModel($this->container); $this->assertEquals(1, $projectModel->create(array('name' => 'P1'))); $this->assertEquals(1, $taskCreation->create(array('title' => 'Test', 'project_id' => 1))); $this->assertNotFalse($projectActivityModel->createEvent(1, 1, 1, TaskModel::EVENT_CREATE, array('task' => $taskFinder->getById(1)))); $query = $projectActivityModel->getQuery(); $filter = new ProjectActivityCreationDateFilter('>='.date('Y-m-d')); $filter->setDateParser($this->container['dateParser']); $filter->withQuery($query)->apply(); $events = $query->findAll(); $this->assertCount(1, $events); $query = $projectActivityModel->getQuery(); $filter = new ProjectActivityCreationDateFilter('<'.date('Y-m-d')); $filter->setDateParser($this->container['dateParser']); $filter->withQuery($query)->apply(); $events = $query->findAll(); $this->assertCount(0, $events); $query = $projectActivityModel->getQuery(); $filter = new ProjectActivityCreationDateFilter('>'.date('Y-m-d')); $filter->setDateParser($this->container['dateParser']); $filter->withQuery($query)->apply(); $events = $query->findAll(); $this->assertCount(0, $events); $query = $projectActivityModel->getQuery(); $filter = new ProjectActivityCreationDateFilter('>='.date('Y-m-d')); $filter->setDateParser($this->container['dateParser']); $filter->withQuery($query)->apply(); $events = $query->findAll(); $this->assertCount(1, $events); } }