| OLD | NEW |
| 1 // Copyright 2008 the V8 project authors. All rights reserved. | 1 // Copyright 2008 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 26 matching lines...) Expand all Loading... |
| 37 num >>= 1; | 37 num >>= 1; |
| 38 } | 38 } |
| 39 | 39 |
| 40 return result; | 40 return result; |
| 41 } | 41 } |
| 42 | 42 |
| 43 assertEquals('0000000000', repeat('0', 10)); | 43 assertEquals('0000000000', repeat('0', 10)); |
| 44 | 44 |
| 45 // assertEquals(, toNumber()); | 45 // assertEquals(, toNumber()); |
| 46 | 46 |
| 47 | |
| 48 assertEquals(123, toNumber(" 123")); | 47 assertEquals(123, toNumber(" 123")); |
| 49 assertEquals(123, toNumber("\n123")); | 48 assertEquals(123, toNumber("\n123")); |
| 50 assertEquals(123, toNumber("\r123")); | 49 assertEquals(123, toNumber("\r123")); |
| 51 assertEquals(123, toNumber("\t123")); | 50 assertEquals(123, toNumber("\t123")); |
| 52 assertEquals(123, toNumber("\f123")); | 51 assertEquals(123, toNumber("\f123")); |
| 53 | 52 |
| 54 assertEquals(123, toNumber("123 ")); | 53 assertEquals(123, toNumber("123 ")); |
| 55 assertEquals(123, toNumber("123\n")); | 54 assertEquals(123, toNumber("123\n")); |
| 56 assertEquals(123, toNumber("123\r")); | 55 assertEquals(123, toNumber("123\r")); |
| 57 assertEquals(123, toNumber("123\t")); | 56 assertEquals(123, toNumber("123\t")); |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 144 assertEquals(15, toNumber("0XF")); | 143 assertEquals(15, toNumber("0XF")); |
| 145 | 144 |
| 146 assertEquals(0, toNumber("0x000")); | 145 assertEquals(0, toNumber("0x000")); |
| 147 assertEquals(-Infinity, 1 / toNumber("-0x000")); | 146 assertEquals(-Infinity, 1 / toNumber("-0x000")); |
| 148 assertEquals(0, toNumber("0x000" + repeat('0', 1000))); | 147 assertEquals(0, toNumber("0x000" + repeat('0', 1000))); |
| 149 assertEquals(9, toNumber("0x009")); | 148 assertEquals(9, toNumber("0x009")); |
| 150 assertEquals(10, toNumber("0x00a")); | 149 assertEquals(10, toNumber("0x00a")); |
| 151 assertEquals(10, toNumber("0x00A")); | 150 assertEquals(10, toNumber("0x00A")); |
| 152 assertEquals(15, toNumber("0x00f")); | 151 assertEquals(15, toNumber("0x00f")); |
| 153 assertEquals(15, toNumber("0x00F")); | 152 assertEquals(15, toNumber("0x00F")); |
| 153 assertEquals(15, toNumber("0x00F ")); |
| 154 assertEquals(Infinity, toNumber("0x" + repeat('0', 1000) + '1' | 154 assertEquals(Infinity, toNumber("0x" + repeat('0', 1000) + '1' |
| 155 + repeat('0', 1000))); | 155 + repeat('0', 1000))); |
| 156 assertEquals(-Infinity, toNumber("-0x1" + repeat('0', 1000))); | 156 assertEquals(-Infinity, toNumber("-0x1" + repeat('0', 1000))); |
| 157 | 157 |
| 158 assertEquals(0x1000000 * 0x10000000, toNumber("0x10000000000000")); |
| 159 assertEquals(0x1000000 * 0x10000000 + 1, toNumber("0x10000000000001")); |
| 160 assertEquals(0x10 * 0x1000000 * 0x10000000, toNumber("0x100000000000000")); |
| 161 assertEquals(0x10 * 0x1000000 * 0x10000000, toNumber("0x100000000000001")); |
| 162 assertEquals(0x10 * 0x1000000 * 0x10000000, toNumber("0x100000000000007")); |
| 163 assertEquals(0x10 * 0x1000000 * 0x10000000, toNumber("0x100000000000008")); |
| 164 assertEquals(0x10 * (0x1000000 * 0x10000000 + 1), |
| 165 toNumber("0x100000000000009")); |
| 166 assertEquals(0x10 * (0x1000000 * 0x10000000 + 1), |
| 167 toNumber("0x10000000000000F")); |
| 168 assertEquals(0x10 * (0x1000000 * 0x10000000 + 1), |
| 169 toNumber("0x100000000000010")); |
| 170 assertEquals(0x100000000000 * 0x1000000 * 0x10000000, |
| 171 toNumber("0x1000000000000000000000000")); |
| 172 assertEquals(0x100000000000 * 0x1000000 * 0x10000000, |
| 173 toNumber("0x1000000000000080000000000")); |
| 174 assertEquals(0x100000000000 * (0x1000000 * 0x10000000 + 1), |
| 175 toNumber("0x1000000000000080000000001")); |
| 176 assertEquals(0x100000000000 * 0x1000000 * 0x10000000, |
| 177 toNumber(" 0x1000000000000000000000000 ")); |
| 178 |
| 158 assertEquals(0, toNumber("00")); | 179 assertEquals(0, toNumber("00")); |
| 159 assertEquals(1, toNumber("01")); | 180 assertEquals(1, toNumber("01")); |
| 160 assertEquals(2, toNumber("02")); | 181 assertEquals(2, toNumber("02")); |
| 161 assertEquals(10, toNumber("010")); | 182 assertEquals(10, toNumber("010")); |
| 162 assertEquals(100, toNumber("0100")); | 183 assertEquals(100, toNumber("0100")); |
| 163 assertEquals(100, toNumber("000100")); | 184 assertEquals(100, toNumber("000100")); |
| 164 | 185 |
| 165 assertEquals(Infinity, toNumber("1e999"), "1e999"); | 186 assertEquals(Infinity, toNumber("1e999"), "1e999"); |
| 166 assertEquals(-Infinity, toNumber("-1e999")); | 187 assertEquals(-Infinity, toNumber("-1e999")); |
| 167 assertEquals(0, toNumber("1e-999")); | 188 assertEquals(0, toNumber("1e-999")); |
| 168 assertEquals(0, toNumber("-1e-999")); | 189 assertEquals(0, toNumber("-1e-999")); |
| 169 assertEquals(Infinity, 1 / toNumber("1e-999"), "1e-999"); | 190 assertEquals(Infinity, 1 / toNumber("1e-999"), "1e-999"); |
| 170 assertEquals(-Infinity, 1 / toNumber("-1e-999")); | 191 assertEquals(-Infinity, 1 / toNumber("-1e-999")); |
| 171 | 192 |
| 172 assertTrue(isNaN(toNumber("junk")), "junk"); | 193 assertTrue(isNaN(toNumber("junk")), "junk"); |
| 173 assertTrue(isNaN(toNumber("100 junk")), "100 junk"); | 194 assertTrue(isNaN(toNumber("100 junk")), "100 junk"); |
| 174 assertTrue(isNaN(toNumber("0x100 junk")), "0x100 junk"); | 195 assertTrue(isNaN(toNumber("0x100 junk")), "0x100 junk"); |
| 175 assertTrue(isNaN(toNumber("100.0 junk")), "100.0 junk"); | 196 assertTrue(isNaN(toNumber("100.0 junk")), "100.0 junk"); |
| 176 assertTrue(isNaN(toNumber(".1e4 junk")), ".1e4 junk"); | 197 assertTrue(isNaN(toNumber(".1e4 junk")), ".1e4 junk"); |
| 177 assertTrue(isNaN(toNumber("Infinity junk")), "Infinity junk"); | 198 assertTrue(isNaN(toNumber("Infinity junk")), "Infinity junk"); |
| 178 assertTrue(isNaN(toNumber("1e")), "1e"); | 199 assertTrue(isNaN(toNumber("1e")), "1e"); |
| 179 assertTrue(isNaN(toNumber("1e ")), "1e_"); | 200 assertTrue(isNaN(toNumber("1e ")), "1e_"); |
| 180 assertTrue(isNaN(toNumber("1" + repeat('0', 1000) + 'junk')), "1e1000 junk"); | 201 assertTrue(isNaN(toNumber("1" + repeat('0', 1000) + 'junk')), "1e1000 junk"); |
| OLD | NEW |