added query string support onto get requests for limit and before

This commit is contained in:
Henry Oswald 2014-07-02 17:37:30 +01:00
parent 8670b543b9
commit 77246b2a07
2 changed files with 23 additions and 2 deletions

View file

@ -19,8 +19,14 @@ module.exports =
getMessages: (project_id, query, callback)->
qs = {}
qs.limit = query.limit if query?.limit?
qs.before = query.before if query?.before?
opts =
uri:"#{settings.apis.chat.url}/room/#{project_id}/messages"
method:"get"
qs: qs
request opts, (err, response, body)->
callback(err, body)

View file

@ -52,18 +52,33 @@ describe "ChatHandler", ->
beforeEach ->
@returnedMessages = [{content:"hello world"}]
@request.callsArgWith(1, null, null, @returnedMessages)
@query = {}
it "should make get request for room to chat api", (done)->
@ChatHandler.getMessages @project_id, (err)=>
@ChatHandler.getMessages @project_id, @query, (err)=>
@opts =
method:"get"
uri:"#{@settings.apis.chat.url}/room/#{@project_id}/messages"
qs:{}
@request.calledWith(@opts).should.equal true
done()
it "should make get request for room to chat api with query string", (done)->
@query = {limit:5, before:12345, ignore:"this"}
@ChatHandler.getMessages @project_id, @query, (err)=>
@opts =
method:"get"
uri:"#{@settings.apis.chat.url}/room/#{@project_id}/messages"
qs:
limit:5
before:12345
@request.calledWith(@opts).should.equal true
done()
it "should return the messages from the request", (done)->
@ChatHandler.getMessages @project_id, (err, returnedMessages)=>
@ChatHandler.getMessages @project_id, @query, (err, returnedMessages)=>
returnedMessages.should.equal @returnedMessages
done()