habitica/test/api/v3/integration/debug/GET-debug-timeTravelTime.test.js

41 lines
1.2 KiB
JavaScript
Raw Normal View History

2024-02-28 16:54:42 +00:00
import nconf from 'nconf';
import {
generateUser,
} from '../../../../helpers/api-integration/v3';
describe('GET /debug/time-travel-time', () => {
let user;
before(async () => {
user = await generateUser({ permissions: { fullAccess: true } });
});
after(() => {
2024-05-21 14:11:18 +00:00
nconf.set('TIME_TRAVEL_ENABLED', false);
2024-02-28 16:54:42 +00:00
});
it('returns the shifted time', async () => {
2024-05-21 14:11:18 +00:00
nconf.set('TIME_TRAVEL_ENABLED', true);
2024-02-28 16:54:42 +00:00
const result = await user.get('/debug/time-travel-time');
expect(result.time).to.exist;
await user.post('/debug/jump-time', { disable: true });
});
2024-04-26 11:44:51 +00:00
it('returns shifted when the user is not an admin', async () => {
2024-05-21 14:11:18 +00:00
nconf.set('TIME_TRAVEL_ENABLED', true);
2024-02-28 16:54:42 +00:00
const regularUser = await generateUser();
2024-04-26 11:44:51 +00:00
const result = await regularUser.get('/debug/time-travel-time');
expect(result.time).to.exist;
2024-02-28 16:54:42 +00:00
});
it('returns error when not in time travel mode', async () => {
2024-06-19 15:30:37 +00:00
sandbox.stub(nconf, 'get').withArgs('TIME_TRAVEL_ENABLED').returns(false);
2024-02-28 16:54:42 +00:00
await expect(user.get('/debug/time-travel-time'))
.eventually.be.rejected.and.to.deep.equal({
code: 404,
error: 'NotFound',
message: 'Not found.',
});
});
});