From c435b100c14c86af9c743c7ce036dc215efdf560 Mon Sep 17 00:00:00 2001 From: Muhsin Abdul-Musawwir Date: Sat, 22 Apr 2017 12:27:42 -0700 Subject: [PATCH] test: refactored context type err message to regex PR-URL: https://github.com/nodejs/node/pull/12596 Reviewed-By: Colin Ihrig Reviewed-By: James M Snell --- test/parallel/test-vm-context.js | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/test/parallel/test-vm-context.js b/test/parallel/test-vm-context.js index 81c86e93705..a3b46cb89fa 100644 --- a/test/parallel/test-vm-context.js +++ b/test/parallel/test-vm-context.js @@ -25,7 +25,7 @@ assert.strictEqual('lala', context.thing); // Issue GH-227: assert.throws(function() { vm.runInNewContext('', null, 'some.js'); -}, TypeError); +}, /^TypeError: sandbox must be an object$/); // Issue GH-1140: console.error('test runInContext signature'); @@ -41,9 +41,18 @@ assert.ok(gh1140Exception, 'expected exception from runInContext signature test'); // GH-558, non-context argument segfaults / raises assertion -[undefined, null, 0, 0.0, '', {}, []].forEach(function(e) { - assert.throws(function() { script.runInContext(e); }, TypeError); - assert.throws(function() { vm.runInContext('', e); }, TypeError); +const nonContextualSandboxErrorMsg = + /^TypeError: contextifiedSandbox argument must be an object\.$/; +const contextifiedSandboxErrorMsg = + /^TypeError: sandbox argument must have been converted to a context\.$/; +[ + [undefined, nonContextualSandboxErrorMsg], + [null, nonContextualSandboxErrorMsg], [0, nonContextualSandboxErrorMsg], + [0.0, nonContextualSandboxErrorMsg], ['', nonContextualSandboxErrorMsg], + [{}, contextifiedSandboxErrorMsg], [[], contextifiedSandboxErrorMsg] +].forEach((e) => { + assert.throws(() => { script.runInContext(e[0]); }, e[1]); + assert.throws(() => { vm.runInContext('', e[0]); }, e[1]); }); // Issue GH-693: