/* eslint-disable handle-callback-err, no-return-assign, */ // TODO: This file was created by bulk-decaffeinate. // Fix any style issues and re-enable lint. /* * decaffeinate suggestions: * DS101: Remove unnecessary use of Array.from * DS102: Remove unnecessary code created because of implicit returns * DS207: Consider shorter variations of null checks * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md */ const chai = require('chai') const { expect } = chai const RealTimeClient = require('./helpers/RealTimeClient') describe('Session', function () { return describe('with an established session', function () { before(function (done) { this.user_id = 'mock-user-id' RealTimeClient.setSession( { user: { _id: this.user_id } }, (error) => { if (error != null) { throw error } this.client = RealTimeClient.connect() return done() } ) return null }) it('should not get disconnected', function (done) { let disconnected = false this.client.on('disconnect', () => (disconnected = true)) return setTimeout(() => { expect(disconnected).to.equal(false) return done() }, 500) }) return it('should appear in the list of connected clients', function (done) { return RealTimeClient.getConnectedClients((error, clients) => { let included = false for (const client of Array.from(clients)) { if (client.client_id === this.client.socket.sessionid) { included = true break } } expect(included).to.equal(true) return done() }) }) }) })