/** * @covers resolveSubscribeUrl */ public function testResolveSubscriptionLink() { $tasks = Task::getByName('MyTest'); $task = $tasks[0]; $sally = UserTestHelper::createBasicUser('sally'); $maggi = UserTestHelper::createBasicUser('maggi'); $task->owner = $sally; $task->requestedByUser = $maggi; $task->save(); if ($task->doNotificationSubscribersContainPerson(Yii::app()->user->userModel) === false) { $notificationSubscriber = new NotificationSubscriber(); $notificationSubscriber->person = Yii::app()->user->userModel; $task->notificationSubscribers->add($notificationSubscriber); $task->save(); } $link = TasksUtil::getKanbanSubscriptionLink($task, 0); $this->assertContains('unsubscribe-task-link', $link); $modelDerivationPathToItem = RuntimeUtil::getModelDerivationPathToItem('User'); foreach ($task->notificationSubscribers as $notificationSubscriber) { $user = $notificationSubscriber->person->castDown(array($modelDerivationPathToItem)); if ($user->id == Yii::app()->user->userModel->id) { $task->notificationSubscribers->remove($notificationSubscriber); } } $task->save(); $link = TasksUtil::getKanbanSubscriptionLink($task, 0); $this->assertContains('subscribe-task-link', $link); }