/**
  * @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);
 }