From 384a4e1368523ce959c8b7c376036a734decd6ca Mon Sep 17 00:00:00 2001 From: rwaldron Date: Tue, 5 Apr 2022 11:18:10 -0400 Subject: [PATCH] Fix false negative in for-in test As originally written, this test would spuriously pass when the deleted property was incorrectly visited by enumation but correctly removed from the object. In such cases, the accumulator string would take the form "aa1baundefinedca3" And satisfy all conditions intended to highlight implementation errors. Refactor the test to avoid false negative by using an object with a null prototype and verifying the exact contents of the accumulator string. --- test/language/statements/for-in/S12.6.4_A7_T2.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/test/language/statements/for-in/S12.6.4_A7_T2.js b/test/language/statements/for-in/S12.6.4_A7_T2.js index b7043d78b4a..9e539b76eac 100644 --- a/test/language/statements/for-in/S12.6.4_A7_T2.js +++ b/test/language/statements/for-in/S12.6.4_A7_T2.js @@ -28,10 +28,14 @@ for (var __key in __obj){ } +<<<<<<< HEAD assert( __accum === "aa1ca3" || __accum === "ca3aa1", "Unexpected value: '" + __accum + "'" ); +======= +assert.sameValue(__accum, "aa1ca3"); +>>>>>>> eeb002c698 (Fix false negative in for-in test) // erasator is the hash map terminator function erasator_T_1000(hash_map, charactr){