2018-02-14 01:21:39 +00:00
|
|
|
import { TAVERN_ID } from '../../../../../website/server/models/group';
|
|
|
|
|
import { updateDocument } from '../../../../helpers/mongo';
|
|
|
|
|
import {
|
|
|
|
|
requester,
|
|
|
|
|
resetHabiticaDB,
|
|
|
|
|
} from '../../../../helpers/api-v3-integration.helper';
|
|
|
|
|
|
|
|
|
|
describe('GET /world-state', () => {
|
|
|
|
|
before(async () => {
|
|
|
|
|
await resetHabiticaDB();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it('returns empty worldBoss object when world boss is not active (and does not require authentication)', async () => {
|
|
|
|
|
const res = await requester().get('/world-state');
|
|
|
|
|
expect(res.worldBoss).to.eql({});
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
it('returns Tavern quest data when world boss is active', async () => {
|
|
|
|
|
await updateDocument('groups', {_id: TAVERN_ID}, {quest: {active: true, key: 'dysheartener', progress: {hp: 50000, rage: 9999}}});
|
|
|
|
|
|
|
|
|
|
const res = await requester().get('/world-state');
|
2018-02-17 17:11:24 +00:00
|
|
|
expect(res).to.have.nested.property('worldBoss');
|
2018-02-14 01:21:39 +00:00
|
|
|
|
|
|
|
|
expect(res.worldBoss).to.eql({
|
|
|
|
|
active: true,
|
|
|
|
|
extra: {},
|
|
|
|
|
key: 'dysheartener',
|
|
|
|
|
progress: {
|
|
|
|
|
collect: {},
|
|
|
|
|
hp: 50000,
|
|
|
|
|
rage: 9999,
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
});
|
2018-03-20 21:30:43 +00:00
|
|
|
|
|
|
|
|
it('returns a string representing the current season for NPC sprites', async () => {
|
|
|
|
|
const res = await requester().get('/world-state');
|
|
|
|
|
|
|
|
|
|
expect(res).to.have.nested.property('npcImageSuffix');
|
|
|
|
|
expect(res.npcImageSuffix).to.be.a('string');
|
|
|
|
|
});
|
2018-03-20 21:56:55 +00:00
|
|
|
});
|