| 'use strict'; |
| const common = require('../common'); |
| const ArrayStream = require('../common/arraystream'); |
| const assert = require('assert'); |
| const repl = require('repl'); |
| |
| { |
| const stream = new ArrayStream(); |
| const options = { |
| eval: common.mustCall((cmd, context) => { |
| assert.strictEqual(cmd, '.scope\n'); |
| assert.deepStrictEqual(context, { animal: 'Sterrance' }); |
| }), |
| input: stream, |
| output: stream, |
| terminal: true |
| }; |
| |
| const r = repl.start(options); |
| r.context = { animal: 'Sterrance' }; |
| |
| stream.emit('data', '\t'); |
| stream.emit('.exit\n'); |
| } |