Skip to content

Commit

Permalink
Add tests for the respond listener to confirm that the robot responds…
Browse files Browse the repository at this point in the history
… to ^<name> and ^@<name> messages.
  • Loading branch information
pgib committed Feb 8, 2013
1 parent 8455740 commit d1cb49e
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 3 deletions.
26 changes: 23 additions & 3 deletions test/robot_test.coffee
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ server = require('http').createServer (req, res) ->
res.end "fetched"

server.listen 9001, ->
assert.equal 6, helper.listeners.length
assert.equal 7, helper.listeners.length
assert.equal 0, helper.sent.length

helper.adapter.receive 'test'
Expand All @@ -23,7 +23,6 @@ server.listen 9001, ->
assert.equal 3, helper.sent.length
assert.ok helper.sent[2].match(/^(1|2)$/)


# Test that when we message a room, the 'recipient' is the robot user and the room attribute is set properly
helper.messageRoom "[email protected]", "Hello room"
assert.equal 4, helper.sent.length
Expand All @@ -35,11 +34,32 @@ server.listen 9001, ->
assert.equal "[email protected]", helper.recipients[4].room
assert.equal "Hello to another room", helper.sent[4]


helper.adapter.receive 'foobar'
assert.equal 6, helper.sent.length
assert.equal 'catch-all', helper.sent[5]

# Testing replies
# ============================
# Using just the name
helper.adapter.receive "#{helper.name} rsvp"
assert.equal 7, helper.sent.length
assert.equal "responding", helper.sent[6]

# Using name with @ form
helper.adapter.receive "@#{helper.name} rsvp"
assert.equal 8, helper.sent.length
assert.equal "responding", helper.sent[7]

# Using just the alias
helper.adapter.receive "#{helper.alias} rsvp"
assert.equal 9, helper.sent.length
assert.equal "responding", helper.sent[8]

# Using alias with @ form
helper.adapter.receive "@#{helper.alias} rsvp"
assert.equal 10, helper.sent.length
assert.equal "responding", helper.sent[9]


# set a callback for when the next message is replied to
helper.cb = (msg) ->
Expand Down
3 changes: 3 additions & 0 deletions test/scripts/test.coffee
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@ module.exports = (robot) ->
robot.hear /reply/i, (msg) ->
msg.reply "OK"

robot.respond /rsvp/i, (msg) ->
msg.send "responding"

robot.hear /random/i, (msg) ->
msg.send msg.random([1,2]).toString()

Expand Down
1 change: 1 addition & 0 deletions test/tests.coffee
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ class Helper extends Robot
@sent = []
@recipients = []
@adapter = new Danger @
@alias = 'alias'

stop: ->
process.exit 0
Expand Down

0 comments on commit d1cb49e

Please sign in to comment.