From 810e4cbd785db160ff0c14c69e1cc2422ab95d1b Mon Sep 17 00:00:00 2001 From: Alys Date: Tue, 17 May 2016 16:13:47 +1000 Subject: [PATCH] completed To-Dos: return the 30 most recent instead of 30 oldest (#7318) --- test/api/v3/integration/tasks/GET-tasks_user.test.js | 4 ++-- website/server/controllers/api-v3/tasks.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/test/api/v3/integration/tasks/GET-tasks_user.test.js b/test/api/v3/integration/tasks/GET-tasks_user.test.js index cd11100599..38b373d76e 100644 --- a/test/api/v3/integration/tasks/GET-tasks_user.test.js +++ b/test/api/v3/integration/tasks/GET-tasks_user.test.js @@ -22,7 +22,7 @@ describe('GET /tasks/user', () => { expect(tasks[0]._id).to.equal(createdTasks[0]._id); }); - it('returns completed todos sorted by completion date if req.query.type === "completeTodos"', async () => { + it('returns completed todos sorted by reverse completion date if req.query.type === "completeTodos"', async () => { let todo1 = await user.post('/tasks/user', {text: 'todo to complete 1', type: 'todo'}); let todo2 = await user.post('/tasks/user', {text: 'todo to complete 2', type: 'todo'}); @@ -37,6 +37,6 @@ describe('GET /tasks/user', () => { let completedTodos = await user.get('/tasks/user?type=completedTodos'); expect(completedTodos.length).to.equal(2); - expect(completedTodos[completedTodos.length - 1].text).to.equal('todo to complete 1'); // last is the todo that was completed later + expect(completedTodos[completedTodos.length - 1].text).to.equal('todo to complete 2'); // last is the todo that was completed most recently }); }); diff --git a/website/server/controllers/api-v3/tasks.js b/website/server/controllers/api-v3/tasks.js index 50e32220bc..7163e7a9e9 100644 --- a/website/server/controllers/api-v3/tasks.js +++ b/website/server/controllers/api-v3/tasks.js @@ -127,7 +127,7 @@ async function _getTasks (req, res, user, challenge) { type: 'todo', completed: true, }).limit(30).sort({ // TODO add ability to pick more than 30 completed todos - dateCompleted: 1, + dateCompleted: -1, }); } else { query.type = type.slice(0, -1); // removing the final "s"