habitica/test/api/v3/integration/inbox/GET-inbox_messages.test.js

48 lines
1.2 KiB
JavaScript
Raw Normal View History

2018-06-18 12:40:25 +00:00
import {
generateUser,
} from '../../../../helpers/api-integration/v3';
2018-06-18 12:40:25 +00:00
describe('GET /inbox/messages', () => {
let user;
let otherUser;
before(async () => {
[user, otherUser] = await Promise.all([generateUser(), generateUser()]);
await otherUser.post('/members/send-private-message', {
toUserId: user.id,
message: 'first',
});
await user.post('/members/send-private-message', {
toUserId: otherUser.id,
message: 'second',
});
await otherUser.post('/members/send-private-message', {
toUserId: user.id,
message: 'third',
});
// message to yourself
await user.post('/members/send-private-message', {
toUserId: user.id,
message: 'fourth',
});
2018-06-18 12:40:25 +00:00
await user.sync();
});
it('returns the user inbox messages as an array of ordered messages (from most to least recent)', async () => {
const messages = await user.get('/inbox/messages');
expect(messages.length).to.equal(4);
// message to yourself
expect(messages[0].text).to.equal('fourth');
expect(messages[0].uuid).to.equal(user._id);
2018-06-18 12:40:25 +00:00
expect(messages[1].text).to.equal('third');
expect(messages[2].text).to.equal('second');
expect(messages[3].text).to.equal('first');
2018-06-18 12:40:25 +00:00
});
});