From a7ee8fb7351b30f6fcecde62a783e8219daa013a Mon Sep 17 00:00:00 2001 From: Leonardo Balter <leonardo.balter@gmail.com> Date: Mon, 13 Mar 2017 19:07:06 -0400 Subject: [PATCH] Fix invalid String#indexOf test in a coercible Date instance Fixes #793 As described by @ediosyncratic: Date(0) flows through the given algorithm to ToDateString, which should: > Return an implementation-dependent String value that represents tv as > a date and time in the current time zone using a convenient, human-readable form. The string is implementation-dependent and there is nothing constraining it to use a two-digit day-of-month (so "Thu Jan 1, 1970, 0:0:0" would be valid), much less to position it at index 8. --- .../prototype/indexOf/S15.5.4.7_A1_T11.js | 20 ------------------- 1 file changed, 20 deletions(-) delete mode 100644 test/built-ins/String/prototype/indexOf/S15.5.4.7_A1_T11.js diff --git a/test/built-ins/String/prototype/indexOf/S15.5.4.7_A1_T11.js b/test/built-ins/String/prototype/indexOf/S15.5.4.7_A1_T11.js deleted file mode 100644 index 017e5b240e..0000000000 --- a/test/built-ins/String/prototype/indexOf/S15.5.4.7_A1_T11.js +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright 2009 the Sputnik authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- -info: String.prototype.indexOf(searchString, position) -es5id: 15.5.4.7_A1_T11 -description: Instance is Date(0) object ----*/ - -var __instance = new Date(0); - -__instance.indexOf = String.prototype.indexOf; - -////////////////////////////////////////////////////////////////////////////// -//CHECK#1 -if ((__instance.getTimezoneOffset()>0 ? __instance.indexOf('31') : __instance.indexOf('01')) !== 8) { - $ERROR('#1: __instance = new Date(0); __instance.indexOf = String.prototype.indexOf; (__instance.getTimezoneOffset()>0 ? __instance.indexOf(\'31\') : __instance.indexOf(\'01\')) === 8. Actual: '+(__instance.getTimezoneOffset()>0 ? __instance.indexOf('31') : __instance.indexOf('01')) ); -} -// -////////////////////////////////////////////////////////////////////////////// -- GitLab