From 47ba37f098827f2ee85a24763d9a0b967ce93db0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bargull?= Date: Wed, 30 Apr 2025 14:16:16 +0200 Subject: [PATCH] Remove unnecessary checks for functions --- test/staging/sm/generators/iteration.js | 10 +- test/staging/sm/object/entries.js | 140 ++++++++++++------------ test/staging/sm/object/values.js | 139 ++++++++++++----------- 3 files changed, 142 insertions(+), 147 deletions(-) diff --git a/test/staging/sm/generators/iteration.js b/test/staging/sm/generators/iteration.js index e19920a2d9..fb4f3e3458 100644 --- a/test/staging/sm/generators/iteration.js +++ b/test/staging/sm/generators/iteration.js @@ -212,12 +212,10 @@ TestGenerator( ["fee", "fi", "fo", "fum", undefined]); // GC. -if (typeof gc == 'function') { - TestGenerator(function* g16() { yield "baz"; $262.gc(); yield "qux"; }, - ["baz", "qux", undefined], - "foo", - ["baz", "qux", undefined]); -} +TestGenerator(function* g16() { yield "baz"; $262.gc(); yield "qux"; }, + ["baz", "qux", undefined], + "foo", + ["baz", "qux", undefined]); // Receivers. TestGenerator( diff --git a/test/staging/sm/object/entries.js b/test/staging/sm/object/entries.js index 915852e7db..a57e027827 100644 --- a/test/staging/sm/object/entries.js +++ b/test/staging/sm/object/entries.js @@ -13,89 +13,87 @@ esid: pending features: [Symbol] ---*/ -if ("entries" in Object) { - assert.sameValue(Object.entries.length, 1); +assert.sameValue("entries" in Object, true); +assert.sameValue(Object.entries.length, 1); - var o, entries; +var o, entries; - o = { a: 3, b: 2 }; - entries = Object.entries(o); - assert.deepEqual(entries, [["a", 3], ["b", 2]]); +o = { a: 3, b: 2 }; +entries = Object.entries(o); +assert.deepEqual(entries, [["a", 3], ["b", 2]]); - o = { get a() { return 17; }, b: 2 }; - entries = Object.entries(o), - assert.deepEqual(entries, [["a", 17], ["b", 2]]); +o = { get a() { return 17; }, b: 2 }; +entries = Object.entries(o), +assert.deepEqual(entries, [["a", 17], ["b", 2]]); - o = { __iterator__: function() { throw new Error("non-standard __iterator__ called?"); } }; - entries = Object.entries(o); - assert.deepEqual(entries, [["__iterator__", o.__iterator__]]); +o = { __iterator__: function() { throw new Error("non-standard __iterator__ called?"); } }; +entries = Object.entries(o); +assert.deepEqual(entries, [["__iterator__", o.__iterator__]]); - o = { a: 1, b: 2 }; - delete o.a; - o.a = 3; - entries = Object.entries(o); - assert.deepEqual(entries, [["b", 2], ["a", 3]]); +o = { a: 1, b: 2 }; +delete o.a; +o.a = 3; +entries = Object.entries(o); +assert.deepEqual(entries, [["b", 2], ["a", 3]]); - o = [0, 1, 2]; - entries = Object.entries(o); - assert.deepEqual(entries, [["0", 0], ["1", 1], ["2", 2]]); +o = [0, 1, 2]; +entries = Object.entries(o); +assert.deepEqual(entries, [["0", 0], ["1", 1], ["2", 2]]); - o = /./.exec("abc"); - entries = Object.entries(o); - assert.deepEqual(entries, [["0", "a"], ["index", 0], ["input", "abc"], ["groups", undefined]]); +o = /./.exec("abc"); +entries = Object.entries(o); +assert.deepEqual(entries, [["0", "a"], ["index", 0], ["input", "abc"], ["groups", undefined]]); - o = { a: 1, b: 2, c: 3 }; - delete o.b; - o.b = 5; - entries = Object.entries(o); - assert.deepEqual(entries, [["a", 1], ["c", 3], ["b", 5]]); +o = { a: 1, b: 2, c: 3 }; +delete o.b; +o.b = 5; +entries = Object.entries(o); +assert.deepEqual(entries, [["a", 1], ["c", 3], ["b", 5]]); - function f() { } - f.prototype.p = 1; - o = new f(); - o.g = 1; - entries = Object.entries(o); - assert.deepEqual(entries, [["g", 1]]); +function f() { } +f.prototype.p = 1; +o = new f(); +o.g = 1; +entries = Object.entries(o); +assert.deepEqual(entries, [["g", 1]]); - var o = {get a() {delete this.b; return 1}, b: 2, c: 3}; - entries = Object.entries(o); - assert.deepEqual(entries, [["a", 1], ["c", 3]]); +var o = {get a() {delete this.b; return 1}, b: 2, c: 3}; +entries = Object.entries(o); +assert.deepEqual(entries, [["a", 1], ["c", 3]]); - assert.throws(TypeError, () => Object.entries()); - assert.throws(TypeError, () => Object.entries(undefined)); - assert.throws(TypeError, () => Object.entries(null)); +assert.throws(TypeError, () => Object.entries()); +assert.throws(TypeError, () => Object.entries(undefined)); +assert.throws(TypeError, () => Object.entries(null)); - assert.deepEqual(Object.entries(1), []); - assert.deepEqual(Object.entries(true), []); - assert.deepEqual(Object.entries(Symbol("foo")), []); +assert.deepEqual(Object.entries(1), []); +assert.deepEqual(Object.entries(true), []); +assert.deepEqual(Object.entries(Symbol("foo")), []); - assert.deepEqual(Object.entries("foo"), [["0", "f"], ["1", "o"], ["2", "o"]]); +assert.deepEqual(Object.entries("foo"), [["0", "f"], ["1", "o"], ["2", "o"]]); - entries = Object.entries({ - get a(){ - Object.defineProperty(this, "b", {enumerable: false}); - return "A"; - }, - b: "B" - }); - assert.deepEqual(entries, [["a", "A"]]); - - let ownKeysCallCount = 0; - let getOwnPropertyDescriptorCalls = []; - let target = { a: 1, b: 2, c: 3 }; - o = new Proxy(target, { - ownKeys() { - ownKeysCallCount++; - return ["c", "a"]; - }, - getOwnPropertyDescriptor(target, key) { - getOwnPropertyDescriptorCalls.push(key); - return Object.getOwnPropertyDescriptor(target, key); - } - }); - entries = Object.entries(o); - assert.sameValue(ownKeysCallCount, 1); - assert.deepEqual(entries, [["c", 3], ["a", 1]]); - assert.deepEqual(getOwnPropertyDescriptorCalls, ["c", "a"]); -} +entries = Object.entries({ + get a(){ + Object.defineProperty(this, "b", {enumerable: false}); + return "A"; + }, + b: "B" +}); +assert.deepEqual(entries, [["a", "A"]]); +let ownKeysCallCount = 0; +let getOwnPropertyDescriptorCalls = []; +let target = { a: 1, b: 2, c: 3 }; +o = new Proxy(target, { + ownKeys() { + ownKeysCallCount++; + return ["c", "a"]; + }, + getOwnPropertyDescriptor(target, key) { + getOwnPropertyDescriptorCalls.push(key); + return Object.getOwnPropertyDescriptor(target, key); + } +}); +entries = Object.entries(o); +assert.sameValue(ownKeysCallCount, 1); +assert.deepEqual(entries, [["c", 3], ["a", 1]]); +assert.deepEqual(getOwnPropertyDescriptorCalls, ["c", "a"]); diff --git a/test/staging/sm/object/values.js b/test/staging/sm/object/values.js index f64ad1298b..97f5319d17 100644 --- a/test/staging/sm/object/values.js +++ b/test/staging/sm/object/values.js @@ -12,89 +12,88 @@ description: | esid: pending features: [Symbol] ---*/ -if ("values" in Object) { - assert.sameValue(Object.values.length, 1); - var o, values; +assert.sameValue("values" in Object, true); +assert.sameValue(Object.values.length, 1); - o = { a: 3, b: 2 }; - values = Object.values(o); - assert.compareArray(values, [3, 2]); +var o, values; - o = { get a() { return 17; }, b: 2 }; - values = Object.values(o), - assert.compareArray(values, [17, 2]); +o = { a: 3, b: 2 }; +values = Object.values(o); +assert.compareArray(values, [3, 2]); - o = { __iterator__: function() { throw new Error("non-standard __iterator__ called?"); } }; - values = Object.values(o); - assert.compareArray(values, [o.__iterator__]); +o = { get a() { return 17; }, b: 2 }; +values = Object.values(o), +assert.compareArray(values, [17, 2]); - o = { a: 1, b: 2 }; - delete o.a; - o.a = 3; - values = Object.values(o); - assert.compareArray(values, [2, 3]); +o = { __iterator__: function() { throw new Error("non-standard __iterator__ called?"); } }; +values = Object.values(o); +assert.compareArray(values, [o.__iterator__]); - o = [0, 1, 2]; - values = Object.values(o); - assert.compareArray(values, [0, 1, 2]); +o = { a: 1, b: 2 }; +delete o.a; +o.a = 3; +values = Object.values(o); +assert.compareArray(values, [2, 3]); - o = /./.exec("abc"); - values = Object.values(o); - assert.compareArray(values, ["a", 0, "abc", undefined]); +o = [0, 1, 2]; +values = Object.values(o); +assert.compareArray(values, [0, 1, 2]); - o = { a: 1, b: 2, c: 3 }; - delete o.b; - o.b = 5; - values = Object.values(o); - assert.compareArray(values, [1, 3, 5]); +o = /./.exec("abc"); +values = Object.values(o); +assert.compareArray(values, ["a", 0, "abc", undefined]); - function f() { } - f.prototype.p = 1; - o = new f(); - o.g = 1; - values = Object.values(o); - assert.compareArray(values, [1]); +o = { a: 1, b: 2, c: 3 }; +delete o.b; +o.b = 5; +values = Object.values(o); +assert.compareArray(values, [1, 3, 5]); - var o = {get a() {delete this.b; return 1}, b: 2, c: 3}; - values = Object.values(o); - assert.compareArray(values, [1, 3]); +function f() { } +f.prototype.p = 1; +o = new f(); +o.g = 1; +values = Object.values(o); +assert.compareArray(values, [1]); - assert.throws(TypeError, () => Object.values()); - assert.throws(TypeError, () => Object.values(undefined)); - assert.throws(TypeError, () => Object.values(null)); +var o = {get a() {delete this.b; return 1}, b: 2, c: 3}; +values = Object.values(o); +assert.compareArray(values, [1, 3]); - assert.compareArray(Object.values(1), []); - assert.compareArray(Object.values(true), []); - assert.compareArray(Object.values(Symbol("foo")), []); +assert.throws(TypeError, () => Object.values()); +assert.throws(TypeError, () => Object.values(undefined)); +assert.throws(TypeError, () => Object.values(null)); - assert.compareArray(Object.values("foo"), ["f", "o", "o"]); +assert.compareArray(Object.values(1), []); +assert.compareArray(Object.values(true), []); +assert.compareArray(Object.values(Symbol("foo")), []); - values = Object.values({ - get a(){ - Object.defineProperty(this, "b", {enumerable: false}); - return "A"; - }, - b: "B" - }); - assert.compareArray(values, ["A"]); +assert.compareArray(Object.values("foo"), ["f", "o", "o"]); - let ownKeysCallCount = 0; - let getOwnPropertyDescriptorCalls = []; - let target = { a: 1, b: 2, c: 3 }; - o = new Proxy(target, { - ownKeys() { - ownKeysCallCount++; - return ["c", "a"]; - }, - getOwnPropertyDescriptor(target, key) { - getOwnPropertyDescriptorCalls.push(key); - return Object.getOwnPropertyDescriptor(target, key); - } - }); - values = Object.values(o); - assert.sameValue(ownKeysCallCount, 1); - assert.compareArray(values, [3, 1]); - assert.compareArray(getOwnPropertyDescriptorCalls, ["c", "a"]); -} +values = Object.values({ + get a(){ + Object.defineProperty(this, "b", {enumerable: false}); + return "A"; + }, + b: "B" +}); +assert.compareArray(values, ["A"]); +let ownKeysCallCount = 0; +let getOwnPropertyDescriptorCalls = []; +let target = { a: 1, b: 2, c: 3 }; +o = new Proxy(target, { + ownKeys() { + ownKeysCallCount++; + return ["c", "a"]; + }, + getOwnPropertyDescriptor(target, key) { + getOwnPropertyDescriptorCalls.push(key); + return Object.getOwnPropertyDescriptor(target, key); + } +}); +values = Object.values(o); +assert.sameValue(ownKeysCallCount, 1); +assert.compareArray(values, [3, 1]); +assert.compareArray(getOwnPropertyDescriptorCalls, ["c", "a"]);