1 | 'use strict'
|
2 |
|
3 |
|
4 | const _ = require('lodash')
|
5 | const config = require('./config')
|
6 | const testutils = require('./testutils')
|
7 |
|
8 | before(testutils.checkDB)
|
9 |
|
10 | describe('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 | })
|