mirror of
https://github.com/sudoxnym/habitica.git
synced 2026-08-04 09:39:23 +00:00
more todos/dailies test cleanup
This commit is contained in:
parent
d5f36a291c
commit
26462be457
3 changed files with 62 additions and 35 deletions
|
|
@ -31,35 +31,15 @@ casper.then ->
|
|||
helper.addTasks()
|
||||
|
||||
casper.then ->
|
||||
user = {before:helper.getUser()}
|
||||
tasks =
|
||||
before:
|
||||
daily: @evaluate -> window.DERBY.app.model.get('_dailyList')
|
||||
todo: @evaluate -> window.DERBY.app.model.get('_todoList')
|
||||
helper.runCron()
|
||||
|
||||
@then ->
|
||||
@wait 1050, -> # user's hp is updated after 1s for animation
|
||||
user.after = helper.getUser()
|
||||
@test.assertEqual user.before.id, user.after.id, 'user id equal after cron'
|
||||
tasks.after =
|
||||
daily: @evaluate -> window.DERBY.app.model.get('_dailyList')
|
||||
todo: @evaluate -> window.DERBY.app.model.get('_todoList')
|
||||
|
||||
@test.assertEqual user.before.tasks.length, user.after.tasks.length, "Didn't lose anything on cron"
|
||||
|
||||
#TODO make sure true for all dailies
|
||||
dailyId = tasks.before.daily[0].id
|
||||
utils.dump tasks.before.daily
|
||||
utils.dump
|
||||
dailyBefore:user.before.tasks[dailyId].value
|
||||
dailyAfter:user.before.tasks[dailyId].value
|
||||
@test.assert user.before.tasks[dailyId].value < user.before.tasks[dailyId].value, "todo gained value on cron"
|
||||
@test.assert user.before.stats.hp < user.after.stats.hp, 'user lost HP on cron'
|
||||
|
||||
#TODO make sure true for all todos
|
||||
todoId = tasks.before.todo[0].id
|
||||
@test.assert user.before.tasks[todoId].value < user.before.tasks[todoId].value, "todo gained value on cron"
|
||||
helper.cronBeforeAfter (beforeAfter) ->
|
||||
casper.then ->
|
||||
#TODO make sure true for all dailies
|
||||
dailyId = beforeAfter.before.tasks.daily[0].id
|
||||
# utils.dump
|
||||
# dailyBefore:user.before.tasks[dailyId].value
|
||||
# dailyAfter:user.before.tasks[dailyId].value
|
||||
casper.test.assert beforeAfter.before.user.tasks[dailyId].value < beforeAfter.after.user.tasks[dailyId].value, "daily:cron:daily gained value"
|
||||
casper.test.assert beforeAfter.before.user.stats.hp < beforeAfter.after.user.stats.hp, 'daily:cron:hp lost value'
|
||||
|
||||
# ---------- Run ------------
|
||||
|
||||
|
|
|
|||
|
|
@ -39,6 +39,36 @@ module.exports = ->
|
|||
casper.evaluate -> window.DERBY.model.set('_user.lastCron', new Date('01/25/2013'))
|
||||
casper.reload()
|
||||
|
||||
cronBeforeAfter: (cb) ->
|
||||
that = @
|
||||
|
||||
getLists = ->
|
||||
{
|
||||
habit: casper.evaluate -> window.DERBY.app.model.get('_habitList')
|
||||
daily: casper.evaluate -> window.DERBY.app.model.get('_dailyList')
|
||||
todo: casper.evaluate -> window.DERBY.app.model.get('_todoList')
|
||||
reward: casper.evaluate -> window.DERBY.app.model.get('_rewardList')
|
||||
}
|
||||
|
||||
beforeAfter =
|
||||
before:
|
||||
user: that.getUser()
|
||||
tasks: getLists()
|
||||
|
||||
casper.then -> that.runCron()
|
||||
|
||||
casper.then ->
|
||||
casper.wait 1050, -> # user's hp is updated after 1s for animation
|
||||
beforeAfter.after =
|
||||
user: that.getUser()
|
||||
tasks: getLists()
|
||||
|
||||
casper.then ->
|
||||
casper.test.assertEqual beforeAfter.before.user.id, beforeAfter.after.user.id, 'user id equal after cron'
|
||||
casper.test.assertEqual beforeAfter.before.user.tasks.length, beforeAfter.after.user.tasks.length, "Didn't lose anything on cron"
|
||||
cb(beforeAfter)
|
||||
|
||||
|
||||
register: ->
|
||||
casper.fill 'form#derby-auth-register',
|
||||
username: random
|
||||
|
|
|
|||
|
|
@ -13,16 +13,33 @@ casper.then ->
|
|||
# Gained exp on +daily
|
||||
casper.then ->
|
||||
user = helper.userBeforeAfter (-> casper.click '.todos input[type="checkbox"]')
|
||||
@test.assertEquals user.before.stats.hp, user.after.stats.hp, '+daily =hp'
|
||||
@test.assert user.before.stats.exp < user.after.stats.exp, '+daily +exp'
|
||||
@test.assert user.before.stats.money < user.after.stats.money, '+daily +money'
|
||||
@test.assertEquals user.before.stats.hp, user.after.stats.hp, '+todo =hp'
|
||||
@test.assert user.before.stats.exp < user.after.stats.exp, '+todo +exp'
|
||||
@test.assert user.before.stats.money < user.after.stats.money, '+todo +money'
|
||||
|
||||
# -daily acts as undo
|
||||
casper.then ->
|
||||
user = helper.userBeforeAfter (-> casper.click '.todos input[type="checkbox"]')
|
||||
@test.assertEquals user.before.stats.hp, user.after.stats.hp, '-daily =hp'
|
||||
@test.assert user.before.stats.exp > user.after.stats.exp, '-daily -exp'
|
||||
@test.assert user.before.stats.money > user.after.stats.money, '-daily -money'
|
||||
@test.assertEquals user.before.stats.hp, user.after.stats.hp, '-todo =hp'
|
||||
@test.assert user.before.stats.exp > user.after.stats.exp, '-todo -exp'
|
||||
@test.assert user.before.stats.money > user.after.stats.money, '-todo -money'
|
||||
|
||||
# ---------- Cron ------------
|
||||
casper.then ->
|
||||
helper.reset()
|
||||
helper.addTasks()
|
||||
|
||||
casper.then ->
|
||||
helper.cronBeforeAfter (beforeAfter) ->
|
||||
casper.then ->
|
||||
#TODO make sure true for all todos
|
||||
todoId = beforeAfter.before.tasks.todo[0].id
|
||||
# utils.dump
|
||||
# dailyBefore:user.before.tasks[dailyId].value
|
||||
# dailyAfter:user.before.tasks[dailyId].value
|
||||
casper.test.assert beforeAfter.before.user.tasks[todoId].value < beforeAfter.after.user.tasks[todoId].value, "todo:cron:todo gained value"
|
||||
casper.test.assertEqual beforeAfter.before.user.stats.hp, beforeAfter.after.user.stats.hp, 'todo:cron:hp no change'
|
||||
|
||||
|
||||
# ---------- Run ------------
|
||||
casper.run ->
|
||||
|
|
|
|||
Loading…
Reference in a new issue