diff options
Diffstat (limited to 'js/src/jit-test/tests/basic/bug1106982.js')
-rw-r--r-- | js/src/jit-test/tests/basic/bug1106982.js | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/basic/bug1106982.js b/js/src/jit-test/tests/basic/bug1106982.js new file mode 100644 index 0000000000..ededf3b936 --- /dev/null +++ b/js/src/jit-test/tests/basic/bug1106982.js @@ -0,0 +1,19 @@ +var x = "wrong"; +var t = {x: "x"}; +var hits = 0; +var p = new Proxy(t, { + has(t, id) { + var found = id in t; + if (++hits == 2) + delete t[id]; + return found; + }, + get(t, id) { return t[id]; } +}); +with (p) + x += " x"; +// If you change this testcase (e.g. because we fix the number of +// has() calls we end up making to match spec better), don't forget to +// update bug1106982-2.js too. See also bug 1145641. +assertEq(hits, 2); +assertEq(t.x, "undefined x"); |