fix REST testing setup

This commit is contained in:
Tyler Renelle 2013-01-25 13:04:25 -05:00
parent 942390640e
commit 0188379552

View file

@ -1,18 +1,31 @@
url = 'http://localhost:3000'
utils = require('utils')
casper = require("casper").create()
uid = undefined
user1 = {}
user2 = {}
# ---------- Main Stuff ------------
casper.start url, ->
uid = @evaluate -> window.DERBY.model.get("_user.id")
casper.start "#{url}/?play=1", ->
user1 = casper.evaluate -> window.DERBY.app.model.get("_user")
@fill 'form#derby-auth-register',
username: user1.id
email: "{user1.id}@gmail.com"
'email-confirmation': "{user1.id}@gmail.com"
password: 'habitrpg123'
, true
casper.thenOpen "#{url}/logout"
casper.thenOpen "#{url}/?play=1", ->
user2 = @evaluate -> window.DERBY.app.model.get("_user")
casper.then -> @test.assertNotEquals user1.id, user2.id, '2 new users created'
# ---------- REST API ------------
# casper.thenOpen "#{url}/users/#{uid}"
# casper.thenOpen "#{url}/users/#{uid}/tasks"
# casper.thenOpen "#{url}/users/#{uid}/tasks/{taskId}"
# casper.thenOpen "#{url}/users/#{user.id}"
# casper.thenOpen "#{url}/users/#{user.id}/tasks"
# casper.thenOpen "#{url}/users/#{user.id}/tasks/{taskId}"
taskId = 'productivity'
pomodoro = {
@ -21,15 +34,36 @@ casper.start url, ->
'icon': 'http://www.veryicon.com/icon/16/Food%20%26%20Drinks/Paradise%20Fruits/Tomato.png'
}
@thenOpen "#{url}/users/#{uid}/tasks/#{taskId}/up", {
method: 'post',
data: pomodoro
}
# ---------- v1 ------------
@thenOpen "#{url}/users/#{uid}/tasks/#{taskId}/down", {
@thenOpen "#{url}/users/#{user1.id}/tasks/#{taskId}/up", {
method: 'post',
data: pomodoro
}
}, ->
result = JSON.parse @getPageContent()
@test.assertEqual user1.stats.hp, result.hp, 'REST +habit =hp'
@test.assert user1.stats.exp < result.exp, 'REST +habit +exp'
@test.assert user1.stats.money < result.money, 'REST +habit +money'
utils.dump result
@thenOpen "#{url}/users/#{user2.id}/tasks/#{taskId}/down", {
method: 'post',
data: pomodoro
}, ->
result = JSON.parse @getPageContent()
@test.assert user2.stats.hp > result.hp, 'REST -habit -hp'
@test.assertEqual user2.stats.exp, result.exp, 'REST -habit =exp'
@test.assertEqual user2.stats.money, result.money, 'REST -habit =money'
utils.dump result
@thenOpen ""
# ---------- v2 ------------
# @thenOpen "#{url}/v2/users/#{uid}/tasks/#{taskId}/down", {
# method: 'post',
# data: pomodoro
# }
# ---------- Run ------------