mirror of
https://github.com/coderaiser/cloudcmd.git
synced 2026-01-23 10:45:47 +00:00
test(terminal) add
This commit is contained in:
parent
b781f90046
commit
27cbed207b
3 changed files with 74 additions and 2 deletions
67
test/server/terminal.js
Normal file
67
test/server/terminal.js
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
'use strict';
|
||||
|
||||
const test = require('tape');
|
||||
const sinon = require('../sinon');
|
||||
|
||||
const configPath = '../../server/config';
|
||||
const terminalPath = '../../server/terminal';
|
||||
|
||||
test('cloudcmd: terminal: disabled', (t) => {
|
||||
clean(terminalPath);
|
||||
stub(configPath, () => {
|
||||
return false;
|
||||
});
|
||||
|
||||
const terminal = require(terminalPath);
|
||||
const fn = terminal();
|
||||
|
||||
t.notOk(fn, 'should return noop');
|
||||
|
||||
clean(configPath);
|
||||
require(configPath);
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('cloudcmd: terminal: disabled: listen', (t) => {
|
||||
clean(terminalPath);
|
||||
stub(configPath, () => false);
|
||||
|
||||
const terminal = require('../../server/terminal');
|
||||
const fn = terminal.listen();
|
||||
|
||||
t.notOk(fn, 'should return noop');
|
||||
|
||||
clean(configPath);
|
||||
require(configPath);
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('cloudcmd: terminal: enabled', (t) => {
|
||||
const {log} = console;
|
||||
console.log = sinon.stub();
|
||||
|
||||
clean(terminalPath);
|
||||
stub(configPath, () => true);
|
||||
require(terminalPath);
|
||||
|
||||
const msg = 'cloudcmd --terminal: path must be a string';
|
||||
|
||||
t.ok(console.log.calledWith(msg), 'should call exit');
|
||||
|
||||
console.log = log;
|
||||
|
||||
clean(configPath);
|
||||
|
||||
t.end();
|
||||
});
|
||||
|
||||
function clean(path) {
|
||||
delete require.cache[require.resolve(path)];
|
||||
}
|
||||
|
||||
function stub(name, fn) {
|
||||
require.cache[require.resolve(name)].exports = fn;
|
||||
}
|
||||
|
||||
|
|
@ -3,8 +3,7 @@
|
|||
const fs = require('fs');
|
||||
|
||||
const test = require('tape');
|
||||
const withDiff = require('../sinon-called-with-diff');
|
||||
const sinon = withDiff(require('sinon'));
|
||||
const sinon = require('../sinon');
|
||||
|
||||
const before = require('../before');
|
||||
const dir = '../..';
|
||||
|
|
|
|||
6
test/sinon.js
Normal file
6
test/sinon.js
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
'use strict';
|
||||
|
||||
const withDiff = require('./sinon-called-with-diff');
|
||||
|
||||
module.exports = withDiff(require('sinon'));
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue