/** * @test */ public function taskUserTracker() { $user = new User(); $task = new Task(); $this->securityContext->expects($this->once())->method('getToken')->will($this->returnValue($this->token)); $this->token->expects($this->once())->method('getUser')->will($this->returnValue($user)); $tracker = new Tracker($user, $task, new \DateTime('now')); $this->trackerRepository->expects($this->once())->method('retrieveUserTracker')->with($user)->will($this->returnValue($tracker)); $result = $this->twigExtension->userTracker(); $this->assertEquals($tracker, $result); }
public function testStopTracking() { $user = new User(); $task = new Task(); $waitTimeInSeconds = 2; $tracker = new Tracker($user, $task); sleep($waitTimeInSeconds); $timeSpent = new TimeSpent($waitTimeInSeconds); $worklog = new Worklog($timeSpent, $tracker->getDateStarted(), $task, $user); $this->trackerRepository->expects($this->once())->method('retrieveUserTracker')->with($user)->will($this->returnValue($tracker)); $this->trackerRepository->expects($this->once())->method('removeTracker')->with($tracker); $this->timeSpentFactory->expects($this->once())->method('create')->with($tracker->getSpentSeconds())->will($this->returnValue($timeSpent)); $this->worklogFactory->expects($this->once())->method('create')->with($timeSpent, $tracker->getDateStarted(), $task, $user)->will($this->returnValue($worklog)); $this->worklogRepository->expects($this->once())->method('save')->with(); $this->service->stopTracking($user); }