1 # Copyright 2013 the V8 project authors. All rights reserved. 2 # Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved. 3 # 4 # Redistribution and use in source and binary forms, with or without 5 # modification, are permitted provided that the following conditions 6 # are met: 7 # 1. Redistributions of source code must retain the above copyright 8 # notice, this list of conditions and the following disclaimer. 9 # 2. Redistributions in binary form must reproduce the above copyright 10 # notice, this list of conditions and the following disclaimer in the 11 # documentation and/or other materials provided with the distribution. 12 # 13 # THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY 14 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 15 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 16 # DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY 17 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 18 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 19 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 20 # ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 21 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 22 # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 24 Test the JavaScript ToNumber operation. 25 26 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". 27 28 29 PASS +undefined is NaN 30 PASS +null is 0 31 PASS +false is 0 32 PASS +true is 1 33 PASS +2 is 2 34 PASS +'' is 0 35 PASS +' ' is 0 36 PASS +' 1' is 1 37 PASS +'1 ' is 1 38 PASS +'x1' is NaN 39 PASS +'1x' is NaN 40 PASS +'0x1' is 1 41 PASS +'1x0' is NaN 42 PASS +(nullCharacter + '1') is NaN 43 PASS +('1' + nullCharacter) is NaN 44 PASS +('1' + nullCharacter + '1') is NaN 45 PASS +(nonASCIICharacter + '1') is NaN 46 PASS +('1' + nonASCIICharacter) is NaN 47 PASS +('1' + nonASCIICharacter + '1') is NaN 48 PASS +('1' + nonASCIINonSpaceCharacter) is NaN 49 PASS +(nonASCIINonSpaceCharacter + '1') is NaN 50 PASS +('1' + nonASCIINonSpaceCharacter + '1') is NaN 51 PASS +(illegalUTF16Sequence + '1') is NaN 52 PASS +('1' + illegalUTF16Sequence) is NaN 53 PASS +('1' + illegalUTF16Sequence + '1') is NaN 54 PASS +'inf' is NaN 55 PASS +'infinity' is NaN 56 PASS +'Inf' is NaN 57 PASS +'+inf' is NaN 58 PASS +'+infinity' is NaN 59 PASS +'+Inf' is NaN 60 PASS +'-inf' is NaN 61 PASS +'-infinity' is NaN 62 PASS +'-Inf' is NaN 63 PASS +'Infinity' is Infinity 64 PASS +'+Infinity' is Infinity 65 PASS +'-Infinity' is -Infinity 66 PASS +'++1' is NaN 67 PASS +'AB' is NaN 68 PASS +'0xAB' is 171 69 PASS +'1e1' is 10 70 PASS +'1E1' is 10 71 PASS +tab is 0 72 PASS +nbsp is 0 73 PASS +ff is 0 74 PASS +vt is 0 75 PASS +cr is 0 76 PASS +lf is 0 77 PASS +ls is 0 78 PASS +ps is 0 79 PASS +oghamSpaceMark is 0 80 PASS +mongolianVowelSeparator is 0 81 PASS +enQuad is 0 82 PASS +emQuad is 0 83 PASS +enSpace is 0 84 PASS +emSpace is 0 85 PASS +threePerEmSpace is 0 86 PASS +fourPerEmSpace is 0 87 PASS +sixPerEmSpace is 0 88 PASS +figureSpace is 0 89 PASS +punctuationSpace is 0 90 PASS +thinSpace is 0 91 PASS +hairSpace is 0 92 PASS +narrowNoBreakSpace is 0 93 PASS +mediumMathematicalSpace is 0 94 PASS +ideographicSpace is 0 95 PASS +(tab + '1') is 1 96 PASS +(nbsp + '1') is 1 97 PASS +(ff + '1') is 1 98 PASS +(vt + '1') is 1 99 PASS +(cr + '1') is 1 100 PASS +(lf + '1') is 1 101 PASS +(ls + '1') is 1 102 PASS +(ps + '1') is 1 103 PASS +(oghamSpaceMark + '1') is 1 104 PASS +(mongolianVowelSeparator + '1') is 1 105 PASS +(enQuad + '1') is 1 106 PASS +(emQuad + '1') is 1 107 PASS +(enSpace + '1') is 1 108 PASS +(emSpace + '1') is 1 109 PASS +(threePerEmSpace + '1') is 1 110 PASS +(fourPerEmSpace + '1') is 1 111 PASS +(sixPerEmSpace + '1') is 1 112 PASS +(figureSpace + '1') is 1 113 PASS +(punctuationSpace + '1') is 1 114 PASS +(thinSpace + '1') is 1 115 PASS +(hairSpace + '1') is 1 116 PASS +(narrowNoBreakSpace + '1') is 1 117 PASS +(mediumMathematicalSpace + '1') is 1 118 PASS +(ideographicSpace + '1') is 1 119 PASS +('1' + tab) is 1 120 PASS +('1' + nbsp) is 1 121 PASS +('1' + ff) is 1 122 PASS +('1' + vt) is 1 123 PASS +('1' + cr) is 1 124 PASS +('1' + lf) is 1 125 PASS +('1' + ls) is 1 126 PASS +('1' + ps) is 1 127 PASS +('1' + oghamSpaceMark) is 1 128 PASS +('1' + mongolianVowelSeparator) is 1 129 PASS +('1' + enQuad) is 1 130 PASS +('1' + emQuad) is 1 131 PASS +('1' + enSpace) is 1 132 PASS +('1' + emSpace) is 1 133 PASS +('1' + threePerEmSpace) is 1 134 PASS +('1' + fourPerEmSpace) is 1 135 PASS +('1' + sixPerEmSpace) is 1 136 PASS +('1' + figureSpace) is 1 137 PASS +('1' + punctuationSpace) is 1 138 PASS +('1' + thinSpace) is 1 139 PASS +('1' + hairSpace) is 1 140 PASS +('1' + narrowNoBreakSpace) is 1 141 PASS +('1' + mediumMathematicalSpace) is 1 142 PASS +('1' + ideographicSpace) is 1 143 PASS +('1' + tab + '1') is NaN 144 PASS +('1' + nbsp + '1') is NaN 145 PASS +('1' + ff + '1') is NaN 146 PASS +('1' + vt + '1') is NaN 147 PASS +('1' + cr + '1') is NaN 148 PASS +('1' + lf + '1') is NaN 149 PASS +('1' + ls + '1') is NaN 150 PASS +('1' + ps + '1') is NaN 151 PASS +('1' + oghamSpaceMark + '1') is NaN 152 PASS +('1' + mongolianVowelSeparator + '1') is NaN 153 PASS +('1' + enQuad + '1') is NaN 154 PASS +('1' + emQuad + '1') is NaN 155 PASS +('1' + enSpace + '1') is NaN 156 PASS +('1' + emSpace + '1') is NaN 157 PASS +('1' + threePerEmSpace + '1') is NaN 158 PASS +('1' + fourPerEmSpace + '1') is NaN 159 PASS +('1' + sixPerEmSpace + '1') is NaN 160 PASS +('1' + figureSpace + '1') is NaN 161 PASS +('1' + punctuationSpace + '1') is NaN 162 PASS +('1' + thinSpace + '1') is NaN 163 PASS +('1' + hairSpace + '1') is NaN 164 PASS +('1' + narrowNoBreakSpace + '1') is NaN 165 PASS +('1' + mediumMathematicalSpace + '1') is NaN 166 PASS +('1' + ideographicSpace + '1') is NaN 167 PASS successfullyParsed is true 168 169 TEST COMPLETE 170 171