mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-18 15:17:25 +01:00
registration tests
This commit is contained in:
@@ -1,39 +1,56 @@
|
||||
utils = require('utils')
|
||||
|
||||
module.exports = ->
|
||||
|
||||
url: 'http://localhost:3000/?play=1'
|
||||
random = Math.random().toString(36).substring(7)
|
||||
|
||||
casper: require("casper").create
|
||||
casper = require("casper").create
|
||||
clientScripts: 'test/includes/lodash.min.js'
|
||||
|
||||
utils: require('utils')
|
||||
{
|
||||
casper: casper
|
||||
|
||||
getUser: -> casper.evaluate -> window.DERBY.app.model.get('_user')
|
||||
url: 'http://localhost:3000'
|
||||
|
||||
addTasks: ->
|
||||
['habit', 'daily', 'todo', 'reward'].forEach (type) ->
|
||||
# Add 15 of each task type
|
||||
num = 0
|
||||
casper.repeat 15, ->
|
||||
casper.fill "form#new-#{type}", {'new-task': "#{type}-#{num}"} # why can't I use true here?
|
||||
casper.click "form#new-#{type} input[type=submit]"
|
||||
utils: utils
|
||||
|
||||
reset: -> casper.evaluate -> window.DERBY.app.reset()
|
||||
getUser: ->
|
||||
casper.evaluate -> window.DERBY.app.model.get('_user')
|
||||
|
||||
userBeforeAfter: (callback) ->
|
||||
user = {}
|
||||
user.before = getUser()
|
||||
callback()
|
||||
user.after = getUser()
|
||||
user
|
||||
addTasks: ->
|
||||
['habit', 'daily', 'todo', 'reward'].forEach (type) ->
|
||||
# Add 15 of each task type
|
||||
num = 0
|
||||
casper.repeat 15, ->
|
||||
casper.fill "form#new-#{type}", {'new-task': "#{type}-#{num}"} # why can't I use true here?
|
||||
casper.click "form#new-#{type} input[type=submit]"
|
||||
|
||||
runCron: ->
|
||||
casper.evaluate -> window.DERBY.model.set('_user.lastCron', new Date('01/10/2013'))
|
||||
casper.reload()
|
||||
reset: ->
|
||||
casper.evaluate -> window.DERBY.app.reset()
|
||||
|
||||
register: ->
|
||||
casper.fill 'form#derby-auth-register',
|
||||
username: 'lefnire'
|
||||
email: 'x@x.com'
|
||||
'email-confirmation': 'x@x.com'
|
||||
password: 'habitrpg123'
|
||||
, true
|
||||
userBeforeAfter: (callback) ->
|
||||
user = {}
|
||||
user.before = getUser()
|
||||
callback()
|
||||
user.after = getUser()
|
||||
user
|
||||
|
||||
runCron: ->
|
||||
casper.evaluate -> window.DERBY.model.set('_user.lastCron', new Date('01/25/2013'))
|
||||
casper.reload()
|
||||
|
||||
register: ->
|
||||
casper.fill 'form#derby-auth-register',
|
||||
username: random
|
||||
email: random + '@gmail.com'
|
||||
'email-confirmation': random + '@gmail.com'
|
||||
password: random
|
||||
, true
|
||||
|
||||
login: ->
|
||||
casper.fill 'form#derby-auth-login',
|
||||
username: random
|
||||
password: random
|
||||
, true
|
||||
|
||||
}
|
||||
|
||||
@@ -1,23 +1,35 @@
|
||||
helpers = require('./helpers')
|
||||
casper = helpers.casper
|
||||
utils = helpers.utils
|
||||
url = helpers.url
|
||||
helper = new require('./test/casper/helpers')()
|
||||
casper = helper.casper
|
||||
utils = helper.utils
|
||||
url = helper.url
|
||||
|
||||
casper.start url + '/?play=1'
|
||||
|
||||
# ---------- Register ------------
|
||||
user = undefined
|
||||
casper.then -> helper.register()
|
||||
casper.then -> user = helper.getUser()
|
||||
casper.then -> casper.reload()
|
||||
casper.then ->
|
||||
helpers.register()
|
||||
casper.then -> user = helpers.getUser()
|
||||
casper.then -> reload()
|
||||
casper.then ->
|
||||
nowUser = getUser()
|
||||
nowUser = helper.getUser()
|
||||
casper.then ->
|
||||
casper.test.assertEqual user.id, nowUser.id, 'user registered and maintained session'
|
||||
|
||||
# ---------- Log Out ------------
|
||||
casper.thenOpen helper.url + '/logout'
|
||||
casper.thenOpen helper.url + '/?play=1'
|
||||
casper.then ->
|
||||
nowUser = helper.getUser()
|
||||
casper.then ->
|
||||
casper.test.assertNotEquals user.id, nowUser.id, 'user logged out'
|
||||
|
||||
# ---------- Login ------------
|
||||
#TODO logout
|
||||
#TODO login
|
||||
#TODO make sure same id
|
||||
casper.then -> helper.login()
|
||||
casper.then -> utils.dump casper.debugHTML '#derby-auth-login'
|
||||
casper.then ->
|
||||
nowUser = helper.getUser()
|
||||
casper.then ->
|
||||
casper.test.assertEqual user.id, nowUser.id, 'user logged in'
|
||||
|
||||
# ---------- Run ------------
|
||||
casper.run ->
|
||||
|
||||
Reference in New Issue
Block a user