meshblu-server-websocket
Version:
Websocket Protocol Adapter for Meshblu
54 lines (45 loc) • 1.64 kB
text/coffeescript
_ = require 'lodash'
Connect = require './connect'
describe 'sendFrame: authenticate', ->
beforeEach (done) ->
= new Connect
.connect (error, things) =>
return done error if error?
{,,,} = things
done()
afterEach (done) ->
.shutItDown done
beforeEach ->
request =
metadata:
uuid: 'to-uuid'
token: 'to-ken'
data: {}
.send 'authenticate', request
it 'should create a request', (done) ->
.getRequest ['request'], (error,request) =>
return done error if error?
return done new Error('Request timeout') unless request?
expect(request.metadata.jobType).to.deep.equal 'Authenticate'
done()
describe 'when the dispatcher responds', ->
beforeEach (done) ->
.once 'authenticate', () => done()
.getRequest ['request'], (error,request) =>
return done error if error?
return done new Error('Request timeout') unless request?
= request.metadata.responseId
response =
metadata:
responseId: request.metadata.responseId
code: 204
data:
uuid: 'OHM MY!! WATT HAPPENED?? VOLTS'
.createResponse 'response', response, (error) =>
return done error if error?
it 'should yield the response', ->
expect().to.deep.equal
metadata:
responseId:
code: 204
rawData: '{"uuid":"OHM MY!! WATT HAPPENED?? VOLTS"}'