diff options
author | Brian Terlson <brian.terlson@microsoft.com> | 2014-07-21 16:09:02 -0700 |
---|---|---|
committer | Brian Terlson <brian.terlson@microsoft.com> | 2014-07-30 15:38:26 -0700 |
commit | d4354d14d534abaf2bcb1f82b3daae0702f3b8ee (patch) | |
tree | c61fce41bac7da21f486f38b443d492ce751f80c /test/suite/ch15/15.4/15.4.4/15.4.4.21/15.4.4.21-7-9.js | |
parent | 07ccd199d9e6cde340d154f1c5bcb539f6e1406a (diff) |
Normalize testcase format
This commit normalizes the test case format used across test262. It applies the following transformations:
* Convert to YAML for frontmatter
* Remove of trailing whitespace
* Replace /r/n with /n except in chapters 6 and 7.
* Copyright header always uses // comments
* new includes attribute replaces $INCLUDE
* No implicit assumptions about test environment other than $ERROR. Everything else appears in the include array. This includes "runTestCase" which is now included in a substantial number of tests.
Diffstat (limited to 'test/suite/ch15/15.4/15.4.4/15.4.4.21/15.4.4.21-7-9.js')
-rw-r--r-- | test/suite/ch15/15.4/15.4.4/15.4.4.21/15.4.4.21-7-9.js | 83 |
1 files changed, 43 insertions, 40 deletions
diff --git a/test/suite/ch15/15.4/15.4.4/15.4.4.21/15.4.4.21-7-9.js b/test/suite/ch15/15.4/15.4.4/15.4.4.21/15.4.4.21-7-9.js index 6b28dc31e..de83c54d9 100644 --- a/test/suite/ch15/15.4/15.4.4/15.4.4.21/15.4.4.21-7-9.js +++ b/test/suite/ch15/15.4/15.4.4/15.4.4.21/15.4.4.21-7-9.js @@ -1,40 +1,43 @@ -/// Copyright (c) 2012 Ecma International. All rights reserved.
-/// Ecma International makes this code available under the terms and conditions set
-/// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the
-/// "Use Terms"). Any redistribution of this code must retain the above
-/// copyright and this notice and otherwise comply with the Use Terms.
-/**
- * @path ch15/15.4/15.4.4/15.4.4.21/15.4.4.21-7-9.js
- * @description Array.prototype.reduce returns initialValue if 'length' is 0 and initialValue is present (subclassed Array, length overridden with [0])
- */
-
-
-function testcase() {
- foo.prototype = new Array(1, 2, 3);
- function foo() {}
- var f = new foo();
-
- f.length = [0];
-
- // objects inherit the default valueOf method of the Object object;
- // that simply returns the itself. Since the default valueOf() method
- // does not return a primitive value, ES next tries to convert the object
- // to a number by calling its toString() method and converting the
- // resulting string to a number.
- //
- // The toString( ) method on Array converts the array elements to strings,
- // then returns the result of concatenating these strings, with commas in
- // between. An array with no elements converts to the empty string, which
- // converts to the number 0. If an array has a single element that is a
- // number n, the array converts to a string representation of n, which is
- // then converted back to n itself. If an array contains more than one element,
- // or if its one element is not a number, the array converts to NaN.
-
- function cb(){}
- try {
- if(f.reduce(cb,1) === 1)
- return true;
- }
- catch (e) { }
- }
-runTestCase(testcase);
+// Copyright (c) 2012 Ecma International. All rights reserved. +// Ecma International makes this code available under the terms and conditions set +// forth on http://hg.ecmascript.org/tests/test262/raw-file/tip/LICENSE (the +// "Use Terms"). Any redistribution of this code must retain the above +// copyright and this notice and otherwise comply with the Use Terms. + +/*--- +description: > + Array.prototype.reduce returns initialValue if 'length' is 0 and + initialValue is present (subclassed Array, length overridden with + [0]) +includes: [runTestCase.js] +---*/ + +function testcase() { + foo.prototype = new Array(1, 2, 3); + function foo() {} + var f = new foo(); + + f.length = [0]; + + // objects inherit the default valueOf method of the Object object; + // that simply returns the itself. Since the default valueOf() method + // does not return a primitive value, ES next tries to convert the object + // to a number by calling its toString() method and converting the + // resulting string to a number. + // + // The toString( ) method on Array converts the array elements to strings, + // then returns the result of concatenating these strings, with commas in + // between. An array with no elements converts to the empty string, which + // converts to the number 0. If an array has a single element that is a + // number n, the array converts to a string representation of n, which is + // then converted back to n itself. If an array contains more than one element, + // or if its one element is not a number, the array converts to NaN. + + function cb(){} + try { + if(f.reduce(cb,1) === 1) + return true; + } + catch (e) { } + } +runTestCase(testcase); |