UNPKG

1.38 kBJavaScriptView Raw
1'use strict'
2/* eslint-env mocha */
3
4const _ = require('lodash')
5const config = require('./config')
6const testutils = require('./testutils')
7
8before(testutils.checkDB)
9
10describe('Chat service.', function () {
11 _.forEach(
12 config.states,
13 state => describe(
14 `State: '${state.state}', adapter: '${state.adapter}'.`,
15 function () {
16 before(() => testutils.setState(state))
17
18 describe('Server initialisation', require('./initialization'))
19
20 describe('Client connection', require('./connection'))
21
22 describe('Room management', require('./roomManagement'))
23
24 describe('Room messaging', require('./roomMessaging'))
25
26 describe('Room permissions', require('./roomPermissions'))
27
28 describe('Direct messaging', require('./directMessaging'))
29
30 describe('Direct permissions', require('./directPermissions'))
31
32 describe('Hooks execution', require('./hooks'))
33
34 describe('Server-side API', require('./api'))
35
36 describe('Server-side API permissions', require('./apiPermissions'))
37
38 describe('Parameters validation', require('./validation'))
39
40 describe('Server errors handling', require('./errorsHandling'))
41
42 describe('State consistency recovery', require('./consistencyRecovery'))
43 }))
44
45 describe('Service cluster with multiple nodes', require('./serviceCluster'))
46})