| OLD | NEW |
| 1 # Copyright 2011 the V8 project authors. All rights reserved. | 1 # Copyright 2011 the V8 project authors. All rights reserved. |
| 2 # Redistribution and use in source and binary forms, with or without | 2 # Redistribution and use in source and binary forms, with or without |
| 3 # modification, are permitted provided that the following conditions are | 3 # modification, are permitted provided that the following conditions are |
| 4 # met: | 4 # met: |
| 5 # | 5 # |
| 6 # * Redistributions of source code must retain the above copyright | 6 # * Redistributions of source code must retain the above copyright |
| 7 # notice, this list of conditions and the following disclaimer. | 7 # notice, this list of conditions and the following disclaimer. |
| 8 # * Redistributions in binary form must reproduce the above | 8 # * Redistributions in binary form must reproduce the above |
| 9 # copyright notice, this list of conditions and the following | 9 # copyright notice, this list of conditions and the following |
| 10 # disclaimer in the documentation and/or other materials provided | 10 # disclaimer in the documentation and/or other materials provided |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 26 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 27 | 27 |
| 28 prefix test262 | 28 prefix test262 |
| 29 def FAIL_OK = FAIL, OKAY | 29 def FAIL_OK = FAIL, OKAY |
| 30 | 30 |
| 31 ############################### BUGS ################################### | 31 ############################### BUGS ################################### |
| 32 | 32 |
| 33 # '__proto__' should be treated as a normal property in JSON. | 33 # '__proto__' should be treated as a normal property in JSON. |
| 34 S15.12.2_A1: FAIL | 34 S15.12.2_A1: FAIL |
| 35 | 35 |
| 36 # V8 Bug: http://code.google.com/p/v8/issues/detail?id=1196 | |
| 37 S8.7_A5_T2: FAIL | |
| 38 | |
| 39 # V8 Bug: http://code.google.com/p/v8/issues/detail?id=1624 | 36 # V8 Bug: http://code.google.com/p/v8/issues/detail?id=1624 |
| 40 S10.4.2.1_A1: FAIL | 37 S10.4.2.1_A1: FAIL |
| 41 | 38 |
| 42 # V8 Bug: http://code.google.com/p/v8/issues/detail?id=1475 | 39 # V8 Bug: http://code.google.com/p/v8/issues/detail?id=1475 |
| 43 15.2.3.6-4-405: FAIL | 40 15.2.3.6-4-405: FAIL |
| 44 15.2.3.6-4-410: FAIL | 41 15.2.3.6-4-410: FAIL |
| 45 15.2.3.6-4-415: FAIL | 42 15.2.3.6-4-415: FAIL |
| 46 15.2.3.6-4-420: FAIL | 43 15.2.3.6-4-420: FAIL |
| 47 | 44 |
| 48 # V8 Bug: http://code.google.com/p/v8/issues/detail?id=1772 | 45 # V8 Bug: http://code.google.com/p/v8/issues/detail?id=1772 |
| 49 15.2.3.6-4-292-1: FAIL | 46 15.2.3.6-4-292-1: FAIL |
| 50 15.2.3.6-4-293-2: FAIL | 47 15.2.3.6-4-293-2: FAIL |
| 51 15.2.3.6-4-293-3: FAIL | 48 15.2.3.6-4-293-3: FAIL |
| 52 15.2.3.6-4-294-1: FAIL | 49 15.2.3.6-4-294-1: FAIL |
| 53 15.2.3.6-4-295-1: FAIL | 50 15.2.3.6-4-295-1: FAIL |
| 54 15.2.3.6-4-296-1: FAIL | 51 15.2.3.6-4-296-1: FAIL |
| 55 15.2.3.6-4-333-11: FAIL | 52 15.2.3.6-4-333-11: FAIL |
| 56 15.2.3.7-6-a-281: FAIL | 53 15.2.3.7-6-a-281: FAIL |
| 57 15.2.3.7-6-a-282: FAIL | 54 15.2.3.7-6-a-282: FAIL |
| 58 15.2.3.7-6-a-283: FAIL | 55 15.2.3.7-6-a-283: FAIL |
| 59 15.2.3.7-6-a-284: FAIL | 56 15.2.3.7-6-a-284: FAIL |
| 60 15.2.3.7-6-a-285: FAIL | 57 15.2.3.7-6-a-285: FAIL |
| 61 | 58 |
| 62 # Invalid test cases (recent change adding var changes semantics) | 59 # Unanalyzed failures: |
| 63 S8.3_A1_T1: FAIL | 60 S15.5.4.14_A1_T6: FAIL |
| 64 S15.3_A3_T1: FAIL | 61 S15.5.4.14_A1_T7: FAIL |
| 65 S15.3_A3_T3: FAIL | 62 S15.5.4.14_A1_T8: FAIL |
| 63 S15.5.4.14_A1_T9: FAIL |
| 64 S15.5.4.14_A2_T7: FAIL |
| 65 S15.10.2.12_A1_T1: FAIL |
| 66 S15.10.2.12_A2_T1: FAIL |
| 66 | 67 |
| 67 ##################### DELIBERATE INCOMPATIBILITIES ##################### | 68 ##################### DELIBERATE INCOMPATIBILITIES ##################### |
| 68 | 69 |
| 69 # We deliberately treat arguments to parseInt() with a leading zero as | 70 # We deliberately treat arguments to parseInt() with a leading zero as |
| 70 # octal numbers in order to not break the web. | 71 # octal numbers in order to not break the web. |
| 71 S15.1.2.2_A5.1_T1: FAIL_OK | 72 S15.1.2.2_A5.1_T1: FAIL_OK |
| 72 | 73 |
| 73 # This tests precision of trignometric functions. We're slightly off | 74 # This tests precision of trignometric functions. We're slightly off |
| 74 # from the implementation in libc (~ 1e-17) but it's not clear if we | 75 # from the implementation in libc (~ 1e-17) but it's not clear if we |
| 75 # or they are closer to the right answer, or if it even matters. | 76 # or they are closer to the right answer, or if it even matters. |
| 76 S15.8.2.16_A7: PASS || FAIL_OK | 77 S15.8.2.16_A7: PASS || FAIL_OK |
| 77 S15.8.2.18_A7: PASS || FAIL_OK | 78 S15.8.2.18_A7: PASS || FAIL_OK |
| 78 S15.8.2.13_A23: PASS || FAIL_OK | 79 S15.8.2.13_A23: PASS || FAIL_OK |
| 79 | 80 |
| 80 # Sputnik tests (r97) assume RegExp.prototype is an Object, not a RegExp. | |
| 81 S15.10.6_A2: FAIL_OK | |
| 82 | |
| 83 # We are silent in some regexp cases where the spec wants us to give | 81 # We are silent in some regexp cases where the spec wants us to give |
| 84 # errors, for compatibility. | 82 # errors, for compatibility. |
| 85 S15.10.2.11_A1_T2: FAIL | 83 S15.10.2.11_A1_T2: FAIL |
| 86 S15.10.2.11_A1_T3: FAIL | 84 S15.10.2.11_A1_T3: FAIL |
| 87 | 85 |
| 88 # We are more lenient in which string character escapes we allow than | 86 # We are more lenient in which string character escapes we allow than |
| 89 # the spec (7.8.4 p. 19) wants us to be. This is for compatibility. | 87 # the spec (7.8.4 p. 19) wants us to be. This is for compatibility. |
| 90 S7.8.4_A4.3_T3: FAIL_OK | |
| 91 S7.8.4_A4.3_T4: FAIL_OK | |
| 92 S7.8.4_A4.3_T5: FAIL_OK | |
| 93 S7.8.4_A4.3_T6: FAIL_OK | |
| 94 S7.8.4_A6.1_T4: FAIL_OK | 88 S7.8.4_A6.1_T4: FAIL_OK |
| 95 S7.8.4_A6.2_T1: FAIL_OK | 89 S7.8.4_A6.2_T1: FAIL_OK |
| 96 S7.8.4_A6.2_T2: FAIL_OK | 90 S7.8.4_A6.2_T2: FAIL_OK |
| 97 S7.8.4_A6.4_T1: FAIL_OK | |
| 98 S7.8.4_A6.4_T2: FAIL_OK | |
| 99 S7.8.4_A7.1_T4: FAIL_OK | 91 S7.8.4_A7.1_T4: FAIL_OK |
| 100 S7.8.4_A7.2_T1: FAIL_OK | 92 S7.8.4_A7.2_T1: FAIL_OK |
| 101 S7.8.4_A7.2_T2: FAIL_OK | 93 S7.8.4_A7.2_T2: FAIL_OK |
| 102 S7.8.4_A7.2_T3: FAIL_OK | 94 S7.8.4_A7.2_T3: FAIL_OK |
| 103 S7.8.4_A7.2_T4: FAIL_OK | 95 S7.8.4_A7.2_T4: FAIL_OK |
| 104 S7.8.4_A7.2_T5: FAIL_OK | 96 S7.8.4_A7.2_T5: FAIL_OK |
| 105 S7.8.4_A7.2_T6: FAIL_OK | 97 S7.8.4_A7.2_T6: FAIL_OK |
| 106 S7.8.4_A7.4_T1: FAIL_OK | |
| 107 S7.8.4_A7.4_T2: FAIL_OK | |
| 108 | |
| 109 # Sputnik expects unicode escape sequences in RegExp flags to be interpreted. | |
| 110 # The specification requires them to be passed uninterpreted to the RegExp | |
| 111 # constructor. We now implement that. | |
| 112 S7.8.5_A3.1_T7: FAIL_OK | |
| 113 S7.8.5_A3.1_T8: FAIL_OK | |
| 114 S7.8.5_A3.1_T9: FAIL_OK | |
| 115 | |
| 116 # We allow some keywords to be used as identifiers. | |
| 117 S7.5.3_A1.15: FAIL_OK | |
| 118 S7.5.3_A1.18: FAIL_OK | |
| 119 S7.5.3_A1.21: FAIL_OK | |
| 120 S7.5.3_A1.22: FAIL_OK | |
| 121 S7.5.3_A1.23: FAIL_OK | |
| 122 S7.5.3_A1.24: FAIL_OK | |
| 123 S7.5.3_A1.26: FAIL_OK | |
| 124 | |
| 125 # This checks for non-262 behavior | |
| 126 S7.6_D1: PASS || FAIL_OK | |
| 127 S7.6_D2: PASS || FAIL_OK | |
| 128 S8.4_D1.1: PASS || FAIL_OK | |
| 129 S8.4_D2.1: PASS || FAIL_OK | |
| 130 S8.4_D2.2: PASS || FAIL_OK | |
| 131 S8.4_D2.3: PASS || FAIL_OK | |
| 132 S8.4_D2.4: PASS || FAIL_OK | |
| 133 S8.4_D2.5: PASS || FAIL_OK | |
| 134 S8.4_D2.6: PASS || FAIL_OK | |
| 135 S8.4_D2.7: PASS || FAIL_OK | |
| 136 S11.4.3_D1.2: PASS || FAIL_OK | |
| 137 S12.6.4_A14_T1: PASS || FAIL_OK | |
| 138 S12.6.4_D1: PASS || FAIL_OK | |
| 139 S12.6.4_R1: PASS || FAIL_OK | |
| 140 S12.6.4_R2: PASS || FAIL_OK | |
| 141 S13.2_D1.2: PASS || FAIL_OK | |
| 142 S13_D1_T1: PASS || FAIL_OK | |
| 143 S14_D4_T3: PASS || FAIL_OK | |
| 144 S14_D7: PASS || FAIL_OK | |
| 145 S15.1.2.2_D1.2: PASS || FAIL_OK | |
| 146 S15.5.2_D2: PASS || FAIL_OK | |
| 147 S15.5.4.11_D1.1_T1: PASS || FAIL_OK | |
| 148 S15.5.4.11_D1.1_T2: PASS || FAIL_OK | |
| 149 S15.5.4.11_D1.1_T3: PASS || FAIL_OK | |
| 150 S15.5.4.11_D1.1_T4: PASS || FAIL_OK | |
| 151 | |
| 152 # We allow function declarations within statements | |
| 153 S12.6.2_A13_T1: FAIL_OK | |
| 154 S12.6.2_A13_T2: FAIL_OK | |
| 155 S12.6.4_A13_T1: FAIL_OK | |
| 156 S12.6.4_A13_T2: FAIL_OK | |
| 157 S15.3.4.2_A1_T1: FAIL_OK | |
| 158 | 98 |
| 159 # Linux and Mac defaults to extended 80 bit floating point format in the FPU. | 99 # Linux and Mac defaults to extended 80 bit floating point format in the FPU. |
| 160 # We follow the other major JS engines by keeping this default. | 100 # We follow the other major JS engines by keeping this default. |
| 161 S8.5_A2.2: PASS, FAIL if $system == linux, FAIL if $system == macos | 101 S8.5_A2.2: PASS, FAIL if $system == linux, FAIL if $system == macos |
| 162 S8.5_A2.1: PASS, FAIL if $system == linux, FAIL if $system == macos | 102 S8.5_A2.1: PASS, FAIL if $system == linux, FAIL if $system == macos |
| 163 | 103 |
| 164 ############################# ES3 TESTS ################################ | |
| 165 # These tests check for ES3 semantics, and differ from ES5. | |
| 166 # When we follow ES5 semantics, it's ok to fail the test. | |
| 167 | |
| 168 # Allow keywords as names of properties in object initialisers and | |
| 169 # in dot-notation property access. | |
| 170 S11.1.5_A4.1: FAIL_OK | |
| 171 S11.1.5_A4.2: FAIL_OK | |
| 172 | |
| 173 # Calls builtins without an explicit receiver which means that | |
| 174 # undefined is passed to the builtin. The tests expect the global | |
| 175 # object to be passed which was true in ES3 but not in ES5. | |
| 176 S11.1.1_A2: FAIL_OK | |
| 177 S15.5.4.4_A1_T3: FAIL_OK | |
| 178 S15.5.4.5_A1_T3: FAIL_OK | |
| 179 S15.5.4.6_A1_T3: FAIL_OK | |
| 180 S15.5.4.7_A1_T3: FAIL_OK | |
| 181 S15.5.4.8_A1_T3: FAIL_OK | |
| 182 S15.5.4.9_A1_T3: FAIL_OK | |
| 183 S15.5.4.10_A1_T3: FAIL_OK | |
| 184 S15.5.4.11_A1_T3: FAIL_OK | |
| 185 S15.5.4.12_A1_T3: FAIL_OK | |
| 186 S15.5.4.13_A1_T3: FAIL_OK | |
| 187 S15.5.4.14_A1_T3: FAIL_OK | |
| 188 S15.5.4.15_A1_T3: FAIL_OK | |
| 189 | |
| 190 # NaN, Infinity and undefined are read-only according to ES5. | |
| 191 S15.1.1.1_A2_T1: FAIL_OK # NaN | |
| 192 S15.1.1.1_A2_T2: FAIL_OK # NaN | |
| 193 S15.1.1.2_A2_T1: FAIL_OK # Infinity | |
| 194 # S15.1.1.2_A2_T2 would fail if it weren't bogus in r97. sputnik bug #45. | |
| 195 S15.1.1.3_A2_T1: FAIL_OK # undefined | |
| 196 S15.1.1.3_A2_T2: FAIL_OK # undefined | |
| 197 | |
| 198 # Array.prototype.to[Locale]String is generic in ES5. | |
| 199 S15.4.4.2_A2_T1: FAIL_OK | |
| 200 S15.4.4.3_A2_T1: FAIL_OK | |
| 201 | |
| 202 ############################ SKIPPED TESTS ############################# | 104 ############################ SKIPPED TESTS ############################# |
| 203 | 105 |
| 204 # These tests take a looong time to run in debug mode. | 106 # These tests take a looong time to run in debug mode. |
| 205 S15.1.3.2_A2.5_T1: PASS, SKIP if $mode == debug | 107 S15.1.3.2_A2.5_T1: PASS, SKIP if $mode == debug |
| 206 S15.1.3.1_A2.5_T1: PASS, SKIP if $mode == debug | 108 S15.1.3.1_A2.5_T1: PASS, SKIP if $mode == debug |
| 207 | 109 |
| 208 [ $arch == arm ] | 110 [ $arch == arm ] |
| 209 | 111 |
| 210 # BUG(3251225): Tests that timeout with --nocrankshaft. | 112 # BUG(3251225): Tests that timeout with --nocrankshaft. |
| 211 S15.1.3.1_A2.5_T1: SKIP | 113 S15.1.3.1_A2.5_T1: SKIP |
| (...skipping 13 matching lines...) Expand all Loading... |
| 225 S15.1.3.1_A2.5_T1: SKIP | 127 S15.1.3.1_A2.5_T1: SKIP |
| 226 S15.1.3.2_A2.5_T1: SKIP | 128 S15.1.3.2_A2.5_T1: SKIP |
| 227 S15.1.3.1_A2.4_T1: SKIP | 129 S15.1.3.1_A2.4_T1: SKIP |
| 228 S15.1.3.1_A2.5_T1: SKIP | 130 S15.1.3.1_A2.5_T1: SKIP |
| 229 S15.1.3.2_A2.4_T1: SKIP | 131 S15.1.3.2_A2.4_T1: SKIP |
| 230 S15.1.3.2_A2.5_T1: SKIP | 132 S15.1.3.2_A2.5_T1: SKIP |
| 231 S15.1.3.3_A2.3_T1: SKIP | 133 S15.1.3.3_A2.3_T1: SKIP |
| 232 S15.1.3.4_A2.3_T1: SKIP | 134 S15.1.3.4_A2.3_T1: SKIP |
| 233 S15.1.3.1_A2.5_T1: SKIP | 135 S15.1.3.1_A2.5_T1: SKIP |
| 234 S15.1.3.2_A2.5_T1: SKIP | 136 S15.1.3.2_A2.5_T1: SKIP |
| OLD | NEW |