mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-19 15:48:04 +01:00
tests(api): Convert GET and flag chat posts to use async/await
This commit is contained in:
@@ -7,69 +7,55 @@ import {
|
|||||||
describe('GET /groups/:groupId/chat', () => {
|
describe('GET /groups/:groupId/chat', () => {
|
||||||
let user;
|
let user;
|
||||||
|
|
||||||
before(() => {
|
before(async () => {
|
||||||
return generateUser().then((generatedUser) => {
|
user = await generateUser();
|
||||||
user = generatedUser;
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
context('public Guild', () => {
|
context('public Guild', () => {
|
||||||
let group;
|
let group;
|
||||||
|
|
||||||
before(() => {
|
before(async () => {
|
||||||
return generateUser({balance: 2})
|
let leader = await generateUser({balance: 2});
|
||||||
.then((generatedLeader) => {
|
|
||||||
return generateGroup(generatedLeader, {
|
group = await generateGroup(leader, {
|
||||||
name: 'test group',
|
name: 'test group',
|
||||||
type: 'guild',
|
type: 'guild',
|
||||||
privacy: 'public',
|
privacy: 'public',
|
||||||
}, {
|
}, {
|
||||||
chat: [
|
chat: [
|
||||||
'Hello',
|
'Hello',
|
||||||
'Welcome to the Guild',
|
'Welcome to the Guild',
|
||||||
],
|
],
|
||||||
});
|
|
||||||
})
|
|
||||||
.then((createdGroup) => {
|
|
||||||
group = createdGroup;
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('returns Guild chat', () => {
|
it('returns Guild chat', async () => {
|
||||||
return user.get(`/groups/${group._id}/chat`)
|
let chat = await user.get(`/groups/${group._id}/chat`);
|
||||||
.then((getChat) => {
|
|
||||||
expect(getChat).to.eql(group.chat);
|
expect(chat).to.eql(group.chat);
|
||||||
});
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
context('private Guild', () => {
|
context('private Guild', () => {
|
||||||
let group;
|
let group;
|
||||||
|
|
||||||
before(() => {
|
before(async () => {
|
||||||
return generateUser({balance: 2})
|
let leader = await generateUser({balance: 2});
|
||||||
.then((generatedLeader) => {
|
|
||||||
return generateGroup(generatedLeader, {
|
group = await generateGroup(leader, {
|
||||||
name: 'test group',
|
name: 'test group',
|
||||||
type: 'guild',
|
type: 'guild',
|
||||||
privacy: 'private',
|
privacy: 'private',
|
||||||
}, {
|
}, {
|
||||||
chat: [
|
chat: [
|
||||||
'Hello',
|
'Hello',
|
||||||
'Welcome to the Guild',
|
'Welcome to the Guild',
|
||||||
],
|
],
|
||||||
});
|
|
||||||
})
|
|
||||||
.then((createdGroup) => {
|
|
||||||
group = createdGroup;
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('returns error if user is not member of requested private group', () => {
|
it('returns error if user is not member of requested private group', async () => {
|
||||||
return expect(
|
await expect(user.get(`/groups/${group._id}/chat`)).to.eventually.be.rejected.and.eql({
|
||||||
user.get(`/groups/${group._id}/chat`)
|
|
||||||
)
|
|
||||||
.to.eventually.be.rejected.and.eql({
|
|
||||||
code: 404,
|
code: 404,
|
||||||
error: 'NotFound',
|
error: 'NotFound',
|
||||||
message: t('groupNotFound'),
|
message: t('groupNotFound'),
|
||||||
|
|||||||
@@ -5,31 +5,19 @@ import {
|
|||||||
import { find } from 'lodash';
|
import { find } from 'lodash';
|
||||||
|
|
||||||
describe('POST /chat/:chatId/flag', () => {
|
describe('POST /chat/:chatId/flag', () => {
|
||||||
let user;
|
let user, group;
|
||||||
let group;
|
const TEST_MESSAGE = 'Test Message';
|
||||||
let testMessage = 'Test Message';
|
|
||||||
|
|
||||||
before(() => {
|
before(async () => {
|
||||||
let groupName = 'Test Guild';
|
user = await generateUser({balance: 1});
|
||||||
let groupType = 'guild';
|
group = await user.post('/groups', {
|
||||||
let groupPrivacy = 'public';
|
name: 'Test Guild',
|
||||||
|
type: 'guild',
|
||||||
return generateUser({balance: 1}).then((generatedUser) => {
|
privacy: 'public',
|
||||||
user = generatedUser;
|
|
||||||
})
|
|
||||||
.then(() => {
|
|
||||||
return user.post('/groups', {
|
|
||||||
name: groupName,
|
|
||||||
type: groupType,
|
|
||||||
privacy: groupPrivacy,
|
|
||||||
});
|
|
||||||
})
|
|
||||||
.then((generatedGroup) => {
|
|
||||||
group = generatedGroup;
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Returns an error when chat message is not found', () => {
|
it('Returns an error when chat message is not found', async () => {
|
||||||
return expect(user.post(`/groups/${group._id}/chat/incorrectMessage/flag`))
|
return expect(user.post(`/groups/${group._id}/chat/incorrectMessage/flag`))
|
||||||
.to.eventually.be.rejected.and.eql({
|
.to.eventually.be.rejected.and.eql({
|
||||||
code: 404,
|
code: 404,
|
||||||
@@ -38,8 +26,8 @@ describe('POST /chat/:chatId/flag', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Returns an error when user tries to flag their own message', () => {
|
it('Returns an error when user tries to flag their own message', async () => {
|
||||||
return user.post(`/groups/${group._id}/chat`, { message: testMessage})
|
return user.post(`/groups/${group._id}/chat`, { message: TEST_MESSAGE})
|
||||||
.then((result) => {
|
.then((result) => {
|
||||||
return expect(user.post(`/groups/${group._id}/chat/${result.message.id}/flag`))
|
return expect(user.post(`/groups/${group._id}/chat/${result.message.id}/flag`))
|
||||||
.to.eventually.be.rejected.and.eql({
|
.to.eventually.be.rejected.and.eql({
|
||||||
@@ -50,11 +38,11 @@ describe('POST /chat/:chatId/flag', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Flags a chat', () => {
|
it('Flags a chat', async () => {
|
||||||
let message;
|
let message;
|
||||||
|
|
||||||
return generateUser().then((anotherUser) => {
|
return generateUser().then((anotherUser) => {
|
||||||
return anotherUser.post(`/groups/${group._id}/chat`, { message: testMessage});
|
return anotherUser.post(`/groups/${group._id}/chat`, { message: TEST_MESSAGE});
|
||||||
})
|
})
|
||||||
.then((result) => {
|
.then((result) => {
|
||||||
message = result.message;
|
message = result.message;
|
||||||
@@ -71,13 +59,13 @@ describe('POST /chat/:chatId/flag', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Flags a chat with a higher flag acount when an admin flags the message', () => {
|
it('Flags a chat with a higher flag acount when an admin flags the message', async () => {
|
||||||
let secondUser;
|
let secondUser;
|
||||||
let message;
|
let message;
|
||||||
|
|
||||||
return generateUser({'contributor.admin': true}).then((generatedUser) => {
|
return generateUser({'contributor.admin': true}).then((generatedUser) => {
|
||||||
secondUser = generatedUser;
|
secondUser = generatedUser;
|
||||||
return user.post(`/groups/${group._id}/chat`, { message: testMessage});
|
return user.post(`/groups/${group._id}/chat`, { message: TEST_MESSAGE});
|
||||||
})
|
})
|
||||||
.then((result) => {
|
.then((result) => {
|
||||||
message = result.message;
|
message = result.message;
|
||||||
@@ -95,11 +83,11 @@ describe('POST /chat/:chatId/flag', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('Returns an error when user tries to flag a message that is already flagged', () => {
|
it('Returns an error when user tries to flag a message that is already flagged', async () => {
|
||||||
let message;
|
let message;
|
||||||
|
|
||||||
return generateUser().then((anotherUser) => {
|
return generateUser().then((anotherUser) => {
|
||||||
return anotherUser.post(`/groups/${group._id}/chat`, { message: testMessage});
|
return anotherUser.post(`/groups/${group._id}/chat`, { message: TEST_MESSAGE});
|
||||||
})
|
})
|
||||||
.then((result) => {
|
.then((result) => {
|
||||||
message = result.message;
|
message = result.message;
|
||||||
|
|||||||
Reference in New Issue
Block a user