Skip to content

Commit

Permalink
test: add known issue test for nodejs#7788
Browse files Browse the repository at this point in the history
15157c3 changed the CLI REPL
to default to useGlobal: false by default. This caused the
regression seen in nodejs#7788.
This commit adds a known issue test while a proper resolution
is determined.

Refs: nodejs#5703
Refs: nodejs#7788
PR-URL: nodejs#7793
Reviewed-By: Rich Trott <rtrott@gmail.com>
  • Loading branch information
cjihrig committed Jul 20, 2016
1 parent 135a863 commit 8c0f776
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 0 deletions.
2 changes: 2 additions & 0 deletions test/fixtures/is-object.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
'use strict';
module.exports.isObject = (obj) => obj.constructor === Object;
32 changes: 32 additions & 0 deletions test/known_issues/test-repl-require-context.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
'use strict';
// Refs: https://github.com/nodejs/node/issues/7788
const common = require('../common');
const assert = require('assert');
const path = require('path');
const repl = require('repl');
const stream = require('stream');
const inputStream = new stream.PassThrough();
const outputStream = new stream.PassThrough();
const fixture = path.join(common.fixturesDir, 'is-object.js');
const r = repl.start({
input: inputStream,
output: outputStream,
useGlobal: false
});

let output = '';
outputStream.setEncoding('utf8');
outputStream.on('data', (data) => output += data);

r.on('exit', common.mustCall(() => {
const results = output.split('\n').map((line) => {
return line.replace(/\w*>\w*/, '').trim();
});

assert.deepStrictEqual(results, ['undefined', 'true', 'true', '']);
}));

inputStream.write('const isObject = (obj) => obj.constructor === Object;\n');
inputStream.write('isObject({});\n');
inputStream.write(`require('${fixture}').isObject({});\n`);
r.close();

0 comments on commit 8c0f776

Please sign in to comment.