From 0afd56e8ad1c55eaf7a98b2b68c20cf95d98f3ce Mon Sep 17 00:00:00 2001 From: Blade Barringer Date: Sun, 24 May 2015 22:03:40 -0500 Subject: [PATCH] Refine anonymous user test --- test/api/anonymized.coffee | 55 ++++++++++++++++++++++++++++++++++---- 1 file changed, 50 insertions(+), 5 deletions(-) diff --git a/test/api/anonymized.coffee b/test/api/anonymized.coffee index ae7e5c132c..e0bbfa9a6b 100644 --- a/test/api/anonymized.coffee +++ b/test/api/anonymized.coffee @@ -2,13 +2,58 @@ app = require("../../website/src/server") -describe "Site Status", -> +describe "GET /api/v2/user/anonymized", -> + + anon = null before (done) -> - registerNewUser(done, true) - - describe "Anonymized User", -> - it "/api/v2/user/anonymized", (done) -> + # TODO: Seed user with messages, rewards, dailys, checklists, webhooks, etc + registerNewUser -> request.get(baseURL + "/user/anonymized").set("Accept", "application/json").end (res) -> expect(res.statusCode).to.be 200 + anon = res.body + expect(anon._id).to.equal user._id done() + , true + + it 'removes credentials and financial information', (done) -> + expect(anon.apiToken).to.not.exist + expect(anon.auth.local).to.not.exist + expect(anon.auth.facebook).to.not.exist + expect(anon.purchased.plan).to.not.exist + done() + + it 'removes profile information', (done) -> + expect(anon.profile).to.not.exist + expect(anon.contributor).to.not.exist + expect(anon.achievements.challenges).to.not.exist + done() + + it 'removes social information', (done) -> + expect(anon.newMessages).to.not.exist + expect(anon.invitations).to.not.exist + expect(anon.items.special.nyeReceived).to.not.exist + expect(anon.items.special.valentineReceived).to.not.exist + _(anon.inbox.messages).each (msg) -> + expect(msg).to.equal 'inbox message text' + done() + + it 'removes webhooks', (done) -> + expect(anon.webhooks).to.not.exist + done() + + it 'anonymizes task info', (done) -> + _(['habits', 'todos', 'dailys', 'rewards']).each (tasks) -> + _(anon[tasks]).each (task) -> + expect(task.text).to.equal 'task text' + expect(task.notes).to.equal 'task notes' + checklist_count = 0 + _(task.checklist).each (box) -> + box.text = 'item' + checklist_count++ + done() + + it 'anonymizes tags', (done) -> + _(anon.tags).each (tag) -> + expect(tag.name).to.equal 'tag' + expect(tag.challenge).to.equal 'challenge' + done()