request = $this->getMockBuilder(IRequest::class)->getMock(); $this->service = $this->getMockBuilder(TicketService::class) ->disableOriginalConstructor() ->getMock(); $this->controller = new TicketApiController($this->request, $this->service, $this->userId); } public function testUpdate() { $note = 'just check if this value is returned correctly'; $this->service->expects($this->once()) ->method('update') ->with($this->equalTo(3), $this->equalTo('title'), $this->equalTo('content'), $this->equalTo($this->userId)) ->will($this->returnValue($note)); $result = $this->controller->update(3); $this->assertEquals($note, $result->getData()); } public function testUpdateNotFound() { // test the correct status code if no note is found $this->service->expects($this->once()) ->method('update') ->will($this->throwException(new NoteNotFound())); $result = $this->controller->update(3); $this->assertEquals(Http::STATUS_NOT_FOUND, $result->getStatus()); } }