%PDF- %PDF-
Direktori : /home/vacivi36/intranet.vacivitta.com.br/protected/modules/mail/tests/codeception/api/ |
Current File : /home/vacivi36/intranet.vacivitta.com.br/protected/modules/mail/tests/codeception/api/EntryCest.php |
<?php namespace mail\api; use mail\ApiTester; use tests\codeception\_support\HumHubApiTestCest; class EntryCest extends HumHubApiTestCest { public function testListByConversationId(ApiTester $I) { if (!$this->isRestModuleEnabled()) { return; } $I->wantTo('see entries of the conversation by id'); $I->amAdmin(); $I->seePaginationGetResponse('mail/3/entries', [ ['id' => 4, 'content' => 'Third Message entry text 1.', 'user_id' => 1], ['id' => 5, 'content' => 'Third Message entry text 2.', 'user_id' => 2], ['id' => 6, 'content' => 'Third Message entry text 3.', 'user_id' => 3], ]); } public function testGetById(ApiTester $I) { if (!$this->isRestModuleEnabled()) { return; } $I->wantTo('see entry by id'); $I->amUser1(); $I->sendGet('mail/2/entry/3'); $I->seeSuccessResponseContainsJson([ 'id' => 3, 'user_id' => 2, 'content' => 'Second Message entry text 2.', ]); } public function testCreateEntry(ApiTester $I) { if (!$this->isRestModuleEnabled()) { return; } $I->wantTo('create entry'); $I->amUser1(); $newMessage = 'New sample reply for conversation #2'; $I->sendPost('mail/2/entry', ['message' => $newMessage]); $I->seeSuccessResponseContainsJson([ 'id' => 7, 'user_id' => 2, 'content' => $newMessage, ]); } public function testCreateEntryByNotParticipant(ApiTester $I) { if (!$this->isRestModuleEnabled()) { return; } $I->wantTo('cannot create entry by not participant'); $I->amUser3(); $newMessage = 'New sample reply for conversation #2'; $I->sendPost('mail/2/entry', ['message' => $newMessage]); $I->seeForbiddenResponseContainsJson([ 'message' => 'You must be a participant of the conversation.', ]); } public function testUpdateEntry(ApiTester $I) { if (!$this->isRestModuleEnabled()) { return; } $I->wantTo('update entry by id'); $I->amAdmin(); $updatedMessage = 'Updated content of the entry #4'; $I->sendPut('mail/3/entry/4', ['content' => $updatedMessage]); $I->seeSuccessResponseContainsJson([ 'id' => 4, 'user_id' => 1, 'content' => $updatedMessage, ]); } public function testCannotUpdateEntry(ApiTester $I) { if (!$this->isRestModuleEnabled()) { return; } $I->wantTo('cannot update not own entry'); $I->amUser1(); $updatedMessage = 'Updated content of the entry #2'; $I->sendPut('mail/3/entry/4', ['content' => $updatedMessage]); $I->seeForbiddenResponseContainsJson([ 'message' => 'You cannot edit the conversation entry!', ]); } public function testDeleteEntry(ApiTester $I) { if (!$this->isRestModuleEnabled()) { return; } $I->wantTo('delete entry'); $I->amUser1(); $I->sendDelete('mail/3/entry/5'); $I->seeSuccessResponseContainsJson([ 'message' => 'Conversation entry successfully deleted!', ]); } public function testCannotDeleteEntry(ApiTester $I) { if (!$this->isRestModuleEnabled()) { return; } $I->wantTo('cannot delete not own entry'); $I->amAdmin(); $I->sendDelete('mail/3/entry/6'); $I->seeForbiddenResponseContainsJson([ 'message' => 'You cannot delete the conversation entry!', ]); } }