cloudcmd/test/server/console.js
2018-03-30 15:12:59 +03:00

60 lines
1.6 KiB
JavaScript

'use strict';
const path = require('path');
const test = require('tape');
const io = require('socket.io-client');
const configPath = path.join(__dirname, '../..', 'server', 'config');
const before = require('../before');
const configFn = require(configPath);
test('cloudcmd: console: enabled by default', (t) => {
const config = {
auth: false
};
before({config}, (port, after) => {
const socket = io(`http://localhost:${port}/console`);
socket.emit('auth', configFn('username'), configFn('password'));
socket.once('data', (data) => {
socket.close();
t.equal(data, 'client #1 console connected\n', 'should emit data event');
after();
t.end();
});
});
});
test('cloudcmd: console: enabled', (t) => {
const config = {console: true};
before({config}, (port, after) => {
const socket = io(`http://localhost:${port}/console`);
socket.emit('auth', configFn('username'), configFn('password'));
socket.once('data', (data) => {
socket.close();
t.equal(data, 'client #1 console connected\n', 'should emit data event');
after();
t.end();
});
});
});
test('cloudcmd: console: disabled', (t) => {
const config = {console: false};
before({config}, (port, after) => {
const socket = io(`http://localhost:${port}/console`);
socket.on('error', (error) => {
t.equal(error, 'Invalid namespace', 'should emit error');
socket.close();
after();
t.end();
});
});
});