You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
834 B

'use strict';
require('../common');
const assert = require('assert');
const PassThrough = require('stream').PassThrough;
const readline = require('readline');
// Checks that tab completion still works
// when output column size is undefined
const iStream = new PassThrough();
const oStream = new PassThrough();
readline.createInterface({
terminal: true,
input: iStream,
output: oStream,
completer: function(line, cb) {
cb(null, [['process.stdout', 'process.stdin', 'process.stderr'], line]);
}
});
let output = '';
oStream.on('data', function(data) {
output += data;
});
oStream.on('end', function() {
const expect = 'process.stdout\r\n' +
'process.stdin\r\n' +
'process.stderr';
assert(new RegExp(expect).test(output));
});
iStream.write('process.std\t');
oStream.end();