start adding quests tests

This commit is contained in:
Tyler Renelle
2014-01-05 15:04:19 -07:00
parent e474278ab3
commit a326072858
2 changed files with 33 additions and 1 deletions
+32 -1
View File
@@ -60,7 +60,7 @@ expectSameValues = (obj1, obj2, paths) ->
expect(helpers.dotGet(k,obj1)).to.eql helpers.dotGet(k,obj2)
expectCode = (res, code) ->
expect(res.body.err).to.be undefined
expect(res.body.err).to.be undefined if code is 200
expect(res.statusCode).to.be code
###### Specs ######
@@ -231,6 +231,8 @@ describe 'API', ->
describe 'Quests', ->
party = undefined
participating = []
notParticipating = []
it 'Invites some members', (done) ->
async.waterfall [
@@ -274,6 +276,35 @@ describe 'API', ->
expect(err).to.be.ok
done()
it 'Starts a quest', (done) ->
async.waterfall [
(cb)->
request.post("#{baseURL}/groups/#{group._id}/questAccept?key=evilsanta")
.end (res) ->
expectCode(res, 401)
User.findByIdAndUpdate _id, {$set:'items.quests.evilsanta':1}, cb
(_user,cb)->
request.post("#{baseURL}/groups/#{group._id}/questAccept?key=evilsanta")
.end (res) ->
expectCode(res, 200)
Group.findById group._id,cb
(_group,cb)->
group = _group #refresh local group
expect(group.quest.key).to.be 'evilsanta'
async.series (_.reduce party, (m,v,i) ->
m.push (cb2) ->
request.post("#{baseURL}/groups/#{group._id}/questAccept")
.set('X-API-User', party[i]._id)
.set('X-API-Key', party[i].apiToken)
.end (res) -> cb2()
m
, []), cb
], done
it "Doesn't include people who aren't participating"
# ############
# # Batch Update