 Path  = require('path')
 Hubot = require('hubot')
 
+class MockResponse extends Hubot.Response
+  sendPrivate: (strings...) ->
+    @robot.adapter.sendPrivate @envelope, strings...
+
 class MockRobot extends Hubot.Robot
   constructor: (httpd=true) ->
     super null, null, httpd, 'hubot'
+
+    @Response = MockResponse
 
   loadAdapter: ->
     @adapter = new Room(@)

  send: (envelope, strings...) ->
    @messages.push ['hubot', str] for str in strings

class Helper
  constructor: (scriptsPath) ->
    @scriptsPath = Path.resolve(Path.dirname(module.parent.filename), scriptsPath)

class Room extends Hubot.Adapter
  constructor: (@robot) ->
    @messages = []

    @privateMessages = {}

    @user =
      say: (userName, message) =>
