From 36d22d82aa202bb199967e9512281e9a53db42c9 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 21:33:14 +0200 Subject: Adding upstream version 115.7.0esr. Signed-off-by: Daniel Baumann --- .../language/statements/for-in/S12.6.4_A5.js | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 js/src/tests/test262/language/statements/for-in/S12.6.4_A5.js (limited to 'js/src/tests/test262/language/statements/for-in/S12.6.4_A5.js') diff --git a/js/src/tests/test262/language/statements/for-in/S12.6.4_A5.js b/js/src/tests/test262/language/statements/for-in/S12.6.4_A5.js new file mode 100644 index 0000000000..d018b9185b --- /dev/null +++ b/js/src/tests/test262/language/statements/for-in/S12.6.4_A5.js @@ -0,0 +1,45 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +info: | + The production IterationStatement: "for (var VariableDeclarationNoIn in + Expression) Statement" +es5id: 12.6.4_A5 +description: > + Using hierarchical Object as an Expression is appropriate. The + depth is two +---*/ + +var __hash__map, __arr, __key, __ind; + +__hash__map={a:{aa:1,ab:2,ac:3,ad:4},b:{ba:1,bb:2,bc:3,bd:4},c:{ca:1,cb:2,cc:3,cd:4},d:{da:1,db:2,dc:3,dd:4}}; + +__arr = ""; + +for(__key in __hash__map){ + for (__ind in __hash__map[__key]){ + __arr+=("" + __ind + __hash__map[__key][__ind]); + } +} + +if(!( +(__arr.indexOf("aa1")!==-1)& +(__arr.indexOf("ab2")!==-1)& +(__arr.indexOf("ac3")!==-1)& +(__arr.indexOf("ad4")!==-1)& +(__arr.indexOf("ba1")!==-1)& +(__arr.indexOf("bb2")!==-1)& +(__arr.indexOf("bc3")!==-1)& +(__arr.indexOf("bd4")!==-1)& +(__arr.indexOf("ca1")!==-1)& +(__arr.indexOf("cb2")!==-1)& +(__arr.indexOf("cc3")!==-1)& +(__arr.indexOf("cd4")!==-1)& +(__arr.indexOf("da1")!==-1)& +(__arr.indexOf("db2")!==-1)& +(__arr.indexOf("dc3")!==-1)& +(__arr.indexOf("dd4")!==-1) +)) throw new Test262Error('#1: The nested for-in Statement applied to hierarchial object works properly as described in the Standard'); + +reportCompare(0, 0); -- cgit v1.2.3