mirror of
https://github.com/sudoxnym/habitica.git
synced 2026-07-19 10:14:11 +00:00
fix task.challenge tests and add checks when scoring challenge tasks
This commit is contained in:
parent
506705d738
commit
f713bf53c1
3 changed files with 5 additions and 3 deletions
|
|
@ -117,7 +117,7 @@ describe('POST /challenges/:challengeId/leave', () => {
|
|||
});
|
||||
|
||||
expect(testTask).to.not.be.undefined;
|
||||
expect(testTask.challenge).to.be.undefined;
|
||||
expect(testTask.challenge).to.eql({});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ describe('PUT /tasks/:id', () => {
|
|||
expect(savedTask.history).to.eql(task.history);
|
||||
expect(savedTask.createdAt).to.equal(task.createdAt);
|
||||
expect(savedTask.updatedAt).to.be.greaterThan(task.updatedAt);
|
||||
expect(savedTask.challenge).to.equal(task.challenge);
|
||||
expect(savedTask.challenge).to.eql(task.challenge);
|
||||
expect(savedTask.completed).to.eql(task.completed);
|
||||
expect(savedTask.streak).to.equal(savedTask.streak); // it's an habit, dailies can change it
|
||||
expect(savedTask.dateCompleted).to.equal(task.dateCompleted);
|
||||
|
|
|
|||
|
|
@ -422,13 +422,15 @@ api.scoreTask = {
|
|||
|
||||
sendTaskWebhook(user.preferences.webhooks, _generateWebhookTaskData(task, direction, delta, userStats, user));
|
||||
|
||||
if (task.challenge.id && task.challenge.taskId && !task.challenge.broken && task.type !== 'reward') {
|
||||
if (task.challenge && task.challenge.id && task.challenge.taskId && !task.challenge.broken && task.type !== 'reward') {
|
||||
// Wrapping everything in a try/catch block because if an error occurs using `await` it MUST NOT bubble up because the request has already been handled
|
||||
try {
|
||||
let chalTask = await Tasks.Task.findOne({
|
||||
_id: task.challenge.taskId,
|
||||
}).exec();
|
||||
|
||||
if (!chalTask) return;
|
||||
|
||||
await chalTask.scoreChallengeTask(delta);
|
||||
} catch (e) {
|
||||
logger.error(e);
|
||||
|
|
|
|||
Loading…
Reference in a new issue