���� JFIF �� � ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /home/real/node-v13.0.1/test/parallel/ |
'use strict'; require('../common'); const ArrayStream = require('../common/arraystream'); const assert = require('assert'); const repl = require('repl'); const vm = require('vm'); // Create a dummy stream that does nothing. const stream = new ArrayStream(); // Test context when useGlobal is false. { const r = repl.start({ input: stream, output: stream, useGlobal: false }); let output = ''; stream.write = function(d) { output += d; }; // Ensure that the repl context gets its own "console" instance. assert(r.context.console); // Ensure that the repl console instance is not the global one. assert.notStrictEqual(r.context.console, console); assert.notStrictEqual(r.context.Object, Object); stream.run(['({} instanceof Object)']); assert.strictEqual(output, 'true\n> '); const context = r.createContext(); // Ensure that the repl context gets its own "console" instance. assert(context.console instanceof require('console').Console); // Ensure that the repl's global property is the context. assert.strictEqual(context.global, context); // Ensure that the repl console instance is writable. context.console = 'foo'; r.close(); } // Test for context side effects. { const server = repl.start({ input: stream, output: stream }); assert.ok(!server.underscoreAssigned); assert.strictEqual(server.lines.length, 0); // An assignment to '_' in the repl server server.write('_ = 500;\n'); assert.ok(server.underscoreAssigned); assert.strictEqual(server.lines.length, 1); assert.strictEqual(server.lines[0], '_ = 500;'); assert.strictEqual(server.last, 500); // Use the server to create a new context const context = server.createContext(); // Ensure that creating a new context does not // have side effects on the server assert.ok(server.underscoreAssigned); assert.strictEqual(server.lines.length, 1); assert.strictEqual(server.lines[0], '_ = 500;'); assert.strictEqual(server.last, 500); // Reset the server context server.resetContext(); assert.ok(!server.underscoreAssigned); assert.strictEqual(server.lines.length, 0); // Ensure that assigning to '_' in the new context // does not change the value in our server. assert.ok(!server.underscoreAssigned); vm.runInContext('_ = 1000;\n', context); assert.ok(!server.underscoreAssigned); assert.strictEqual(server.lines.length, 0); server.close(); }