This commit is contained in:
Daniel Saewitz 2013-02-21 20:17:23 -05:00
parent ddff29ccf0
commit 08d57e32ff
3 changed files with 19 additions and 20 deletions

View file

@ -21,19 +21,23 @@ router.get '/status', (req, res) ->
status: 'up'
router.get '/user', (req, res) ->
console.log 'hi'
{ uid, token } = req.query
console.log 'hi', { uid, token } = req.query
return res.json 500, NO_TOKEN_OR_UID unless uid || token
model = req.getModel()
query = model.query('users').withIdAndToken(uid, token)
query.fetch (err, user) ->
throw err if err
console.log user.at(0).get()
self = user.get()
console.log self
return res.json 500, err: err if err
return res.json 500, NO_USER_FOUND if !self || _.isEmpty(self)
res.json self
return res.json self
res.json {err: 'Something went wrong'}
router.get '/user/calendar.ics', (req, res) ->
#return next() #disable for now

View file

@ -56,7 +56,7 @@ REST = (store) ->
store.query.expose "users", "withIdAndToken", (uid, token) ->
@byId(uid)
.where('apiToken').equals(token)
.one
.limit(1)
store.queryAccess "users", "withIdAndToken", (uid, token, accept, err) ->
return accept(true) if uid && token

View file

@ -7,9 +7,12 @@ moment = require 'moment'
request = require 'superagent'
qs = require 'querystring'
app = require '../server'
racer.use require 'racer-db-mongo'
store = app.habitStore
store = racer.createStore
db:
type: 'Mongo'
uri: process.env.NODE_DB_URI
# Custom modules
scoring = require '../src/app/scoring'
@ -86,12 +89,8 @@ describe 'API', ->
describe 'Without token or user id', ->
it '/api/v1/user', (done) ->
request(app)
.get("/api/v1/user")
request.get("#{baseURL}/user")
.set('Accept', 'application/json')
.on('error', (err) ->
console.log 'err', err
)
.end (res) ->
assert.equal res.statusCode, 500
assert.ok JSON.parse(res.text).err
@ -100,9 +99,9 @@ describe 'API', ->
describe 'With token and user id', ->
before (done) ->
model = store.createModel()
store.flush()
#store.flush()
uid = model.id()
model.set '_userId', uid = model.id()
user = character.newUserObject()
user.apiToken = derby.uuid()
model.set "users.#{uid}", user
@ -114,20 +113,16 @@ describe 'API', ->
done()
after (done) ->
store.flush done
it '/api/v1/user', (done) ->
console.log params
request(app)
.get("/api/v1/user")
console.log "#{baseURL}/user?#{qs.stringify(params)}"
request.get("#{baseURL}/user")
.set('Accept', 'application/json')
.query(params)
.on('error', (err) ->
console.log 'err', err
)
.end (res) ->
console.log 'test', res.body
console.log res.body
assert.ok !res.body.err
assert.equal res.statusCode, 200
assert.ok res.body