aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Lam S.L <alexlamsl@gmail.com>2020-12-13 18:05:07 +0000
committerGitHub <noreply@github.com>2020-12-14 02:05:07 +0800
commitf579f1aa47a0ba13955433b90b56bea241849f83 (patch)
tree2aa39c1d9d4f103cd94c0336fe6ca7ff25a0b9b4
parentfcc40d0502a29e09a164ca04603db33b7dedfc3c (diff)
downloadtracifyjs-f579f1aa47a0ba13955433b90b56bea241849f83.tar.gz
tracifyjs-f579f1aa47a0ba13955433b90b56bea241849f83.zip
emulate global context in Node.js & web (#4379)
-rw-r--r--test/compress/ie8.js4
-rw-r--r--test/sandbox.js11
2 files changed, 10 insertions, 5 deletions
diff --git a/test/compress/ie8.js b/test/compress/ie8.js
index c5b8b155..c28512ac 100644
--- a/test/compress/ie8.js
+++ b/test/compress/ie8.js
@@ -588,7 +588,6 @@ issue_3197_1: {
ie8: false,
}
input: {
- var window = {};
!function() {
function Foo() {
console.log(this instanceof Foo);
@@ -598,7 +597,6 @@ issue_3197_1: {
new window.Foo();
}
expect: {
- var window = {};
window.Foo = function o() {
console.log(this instanceof o);
};
@@ -619,7 +617,6 @@ issue_3197_1_ie8: {
ie8: true,
}
input: {
- var window = {};
!function() {
function Foo() {
console.log(this instanceof Foo);
@@ -629,7 +626,6 @@ issue_3197_1_ie8: {
new window.Foo();
}
expect: {
- var window = {};
window.Foo = function Foo() {
console.log(this instanceof Foo);
};
diff --git a/test/sandbox.js b/test/sandbox.js
index 46b1a410..f659427d 100644
--- a/test/sandbox.js
+++ b/test/sandbox.js
@@ -26,10 +26,19 @@ var setupContext = new vm.Script([
]).join("\n"));
function createContext() {
- var ctx = vm.createContext(Object.defineProperty({}, "console", { value: { log: log } }));
+ var ctx = vm.createContext(Object.defineProperties({}, {
+ console: { value: { log: log } },
+ global: { get: self },
+ self: { get: self },
+ window: { get: self },
+ }));
var global = setupContext.runInContext(ctx);
return ctx;
+ function self() {
+ return this;
+ }
+
function safe_log(arg, level) {
if (arg) switch (typeof arg) {
case "function":