From c81c3a6118ef33963ad5cdcc5ac398989fda7a0f Mon Sep 17 00:00:00 2001 From: Ronald Brill Date: Mon, 30 Sep 2024 09:06:37 +0200 Subject: [PATCH] as map/set/weakmap are supported by Rhino, we can enable one more test; In contrast to the original test, weakmap does not support symbols as key (have tested that with real browsers). Therfore i had to comment some lines. --- tests/testsrc/jstests/harmony/v8-symbols.js | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/tests/testsrc/jstests/harmony/v8-symbols.js b/tests/testsrc/jstests/harmony/v8-symbols.js index a7a5f2715e..8090119f77 100644 --- a/tests/testsrc/jstests/harmony/v8-symbols.js +++ b/tests/testsrc/jstests/harmony/v8-symbols.js @@ -245,8 +245,7 @@ function TestCall() { TestCall() -/* - * TODO Rhino not implemented +/* Rhino changed - weakmap does not support symbol keys */ function TestCollections() { var set = new Set var map = new Map @@ -254,28 +253,27 @@ function TestCollections() { for (var i in symbols) { set.add(symbols[i]) map.set(symbols[i], i) - weakmap.set(symbols[i], i) + /* weakmap.set(symbols[i], i) */ } assertEquals(symbols.length, set.size) assertEquals(symbols.length, map.size) for (var i in symbols) { assertTrue(set.has(symbols[i])) assertTrue(map.has(symbols[i])) - assertTrue(weakmap.has(symbols[i])) + /* assertTrue(weakmap.has(symbols[i])) */ assertEquals(i, map.get(symbols[i])) - assertEquals(i, weakmap.get(symbols[i])) + /* assertEquals(i, weakmap.get(symbols[i])) */ } for (var i in symbols) { assertTrue(set.delete(symbols[i])) assertTrue(map.delete(symbols[i])) - assertTrue(weakmap.delete(symbols[i])) + /* assertTrue(weakmap.delete(symbols[i])) */ } assertEquals(0, set.size) assertEquals(0, map.size) } TestCollections() -*/ function TestKeySet(obj) { //assertTrue(%HasFastProperties(obj)) @@ -364,9 +362,7 @@ function TestKeyDelete(obj) { } } -// TODO Rhino no Map -//var objs = [{}, [], Object.create(null), Object(1), new Map, function(){}] -var objs = [{}, [], Object.create(null), Object(1), function(){}] +var objs = [{}, [], Object.create(null), Object(1), new Map, function(){}] for (var i in objs) { //print('Testing ' + i + ' (' + typeof i + ')');