From c7183ca08047fd39548bbf072be81954d99966f9 Mon Sep 17 00:00:00 2001 From: Koen Kanters Date: Tue, 22 Nov 2022 19:16:25 +0100 Subject: [PATCH] Update external converter tester. --- scripts/testExternalConverter.js | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/scripts/testExternalConverter.js b/scripts/testExternalConverter.js index 7b7c02fa5..db63e253f 100644 --- a/scripts/testExternalConverter.js +++ b/scripts/testExternalConverter.js @@ -1,5 +1,22 @@ const assert = require('assert'); +const vm = require('vm'); +const fs = require('fs'); +const path = require('path'); const filename = process.argv[2]; -const converter = require('./' + filename); +const moduleCode = fs.readFileSync(filename); +const moduleFakePath = path.join(__dirname, 'externally-loaded.js'); +const sandbox = { + require: require, + module: {}, + console, + setTimeout, + clearTimeout, + setInterval, + clearInterval, + setImmediate, + clearImmediate, +}; +vm.runInNewContext(moduleCode, sandbox, moduleFakePath); +const converter = sandbox.module.exports; assert(!converter.toZigbee.includes(undefined)); assert(!converter.fromZigbee.includes(undefined));