S15.5.1.1_A1_T16.js (3048B)
1 // Copyright 2009 the Sputnik authors. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 info: | 6 When String is called as a function rather than as a constructor, it 7 performs a type conversion 8 es5id: 15.5.1.1_A1_T16 9 description: Call String() with .12345 and analogous numbers 10 ---*/ 11 12 var __str = String(.12345); 13 14 ////////////////////////////////////////////////////////////////////////////// 15 //CHECK#1 16 if (typeof __str !== "string") { 17 throw new Test262Error('#1: __str = String(.12345); typeof __str === "string". Actual: typeof __str ===' + typeof __str); 18 } 19 // 20 ////////////////////////////////////////////////////////////////////////////// 21 22 ////////////////////////////////////////////////////////////////////////////// 23 //CHECK#2 24 if (__str !== "0.12345") { 25 throw new Test262Error('#2: __str = String(.12345); __str === "0.12345". Actual: __str ===' + __str); 26 } 27 // 28 ////////////////////////////////////////////////////////////////////////////// 29 30 __str = String(.012345); 31 32 ////////////////////////////////////////////////////////////////////////////// 33 //CHECK#3 34 if (typeof __str !== "string") { 35 throw new Test262Error('#3: __str = String(.012345); typeof __str === "string". Actual: typeof __str ===' + typeof __str); 36 } 37 // 38 ////////////////////////////////////////////////////////////////////////////// 39 40 ////////////////////////////////////////////////////////////////////////////// 41 //CHECK#4 42 if (__str !== "0.012345") { 43 throw new Test262Error('#4: __str = String(.012345); __str === "0.012345". Actual: __str ===' + __str); 44 } 45 // 46 ////////////////////////////////////////////////////////////////////////////// 47 48 __str = String(.0012345); 49 50 ////////////////////////////////////////////////////////////////////////////// 51 //CHECK#5 52 if (typeof __str !== "string") { 53 throw new Test262Error('#5: __str = String(.0012345); typeof __str === "string". Actual: typeof __str ===' + typeof __str); 54 } 55 // 56 ////////////////////////////////////////////////////////////////////////////// 57 58 ////////////////////////////////////////////////////////////////////////////// 59 //CHECK#6 60 if (__str !== "0.0012345") { 61 throw new Test262Error('#6: __str = String(.0012345); __str === "0.0012345". Actual: __str ===' + __str); 62 } 63 // 64 ////////////////////////////////////////////////////////////////////////////// 65 66 __str = String(.00000012345); 67 68 ////////////////////////////////////////////////////////////////////////////// 69 //CHECK#7 70 if (typeof __str !== "string") { 71 throw new Test262Error('#7: __str = String(.00000012345); typeof __str === "string". Actual: typeof __str ===' + typeof __str); 72 } 73 // 74 ////////////////////////////////////////////////////////////////////////////// 75 76 ////////////////////////////////////////////////////////////////////////////// 77 //CHECK#8 78 if (__str !== "1.2345e-7") { 79 throw new Test262Error('#8: __str = String(.00000012345); __str === "1.2345e-7". Actual: __str ===' + __str); 80 } 81 // 82 ////////////////////////////////////////////////////////////////////////////// 83 84 reportCompare(0, 0);