meshblu-server-websocket
Version:
Websocket Protocol Adapter for Meshblu
46 lines (37 loc) • 1.46 kB
text/coffeescript
_ = require 'lodash'
Connect = require './connect'
describe 'sendFrame: update', ->
beforeEach (done) ->
= new Connect
.connect (error, things) =>
return done error if error?
{,,,} = things
done()
afterEach (done) ->
.shutItDown done
beforeEach ->
request = [{uuid: 'to-uuid'}, { uuid: 'to-uuid', foo: 'bar' }]
.send 'update', 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 'UpdateDevice'
done()
describe 'when the dispatcher responds', ->
beforeEach (done) ->
.once 'updated', () => 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