Home | History | Annotate | Download | only in webkit
      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