rhino1.7.6.testsrc.tests.ecma.GlobalObject.15.1.2.3-1.js Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of rhino Show documentation
Show all versions of rhino Show documentation
Rhino is an open-source implementation of JavaScript written entirely in Java. It is typically
embedded into Java applications to provide scripting to end users.
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
gTestfile = '15.1.2.3-1.js';
/**
File Name: 15.1.2.3.js
ECMA Section: 15.1.2.3 Function properties of the global object:
parseFloat( string )
Description: The parseFloat function produces a number value dictated
by the interpretation of the contents of the string
argument defined as a decimal literal.
When the parseFloat function is called, the following
steps are taken:
1. Call ToString( string ).
2. Remove leading whitespace Result(1).
3. If neither Result(2) nor any prefix of Result(2)
satisfies the syntax of a StrDecimalLiteral,
return NaN.
4. Compute the longest prefix of Result(2) which might
be Resusult(2) itself, that satisfies the syntax of
a StrDecimalLiteral
5. Return the number value for the MV of Result(4).
Note that parseFloate may interpret only a leading
portion of the string as a number value; it ignores any
characters that cannot be interpreted as part of the
notation of a decimal literal, and no indication is given
that such characters were ignored.
StrDecimalLiteral::
Infinity
DecimalDigits.DecimalDigits opt ExponentPart opt
.DecimalDigits ExponentPart opt
DecimalDigits ExponentPart opt
Author: [email protected]
Date: 28 october 1997
*/
var SECTION = "15.1.2.3-1";
var VERSION = "ECMA_1";
var TITLE = "parseFloat(string)";
var BUGNUMBER="none";
startTest();
writeHeaderToLog( SECTION + " "+ TITLE);
new TestCase( SECTION, "parseFloat.length", 1, parseFloat.length );
new TestCase( SECTION, "parseFloat.length = null; parseFloat.length", 1, eval("parseFloat.length = null; parseFloat.length") );
new TestCase( SECTION, "delete parseFloat.length", false, delete parseFloat.length );
new TestCase( SECTION, "delete parseFloat.length; parseFloat.length", 1, eval("delete parseFloat.length; parseFloat.length") );
new TestCase( SECTION, "var MYPROPS=''; for ( var p in parseFloat ) { MYPROPS += p }; MYPROPS", "prototype", eval("var MYPROPS=''; for ( var p in parseFloat ) { MYPROPS += p }; MYPROPS") );
new TestCase( SECTION, "parseFloat()", Number.NaN, parseFloat() );
new TestCase( SECTION, "parseFloat('')", Number.NaN, parseFloat('') );
new TestCase( SECTION, "parseFloat(' ')", Number.NaN, parseFloat(' ') );
new TestCase( SECTION, "parseFloat(true)", Number.NaN, parseFloat(true) );
new TestCase( SECTION, "parseFloat(false)", Number.NaN, parseFloat(false) );
new TestCase( SECTION, "parseFloat('string')", Number.NaN, parseFloat("string") );
new TestCase( SECTION, "parseFloat(' Infinity')", Infinity, parseFloat("Infinity") );
new TestCase( SECTION, "parseFloat(' Infinity ')", Infinity, parseFloat(' Infinity ') );
new TestCase( SECTION, "parseFloat('Infinity')", Infinity, parseFloat("Infinity") );
new TestCase( SECTION, "parseFloat(Infinity)", Infinity, parseFloat(Infinity) );
new TestCase( SECTION, "parseFloat(' +Infinity')", +Infinity, parseFloat("+Infinity") );
new TestCase( SECTION, "parseFloat(' -Infinity ')", -Infinity, parseFloat(' -Infinity ') );
new TestCase( SECTION, "parseFloat('+Infinity')", +Infinity, parseFloat("+Infinity") );
new TestCase( SECTION, "parseFloat(-Infinity)", -Infinity, parseFloat(-Infinity) );
new TestCase( SECTION, "parseFloat('0')", 0, parseFloat("0") );
new TestCase( SECTION, "parseFloat('-0')", -0, parseFloat("-0") );
new TestCase( SECTION, "parseFloat('+0')", 0, parseFloat("+0") );
new TestCase( SECTION, "parseFloat('1')", 1, parseFloat("1") );
new TestCase( SECTION, "parseFloat('-1')", -1, parseFloat("-1") );
new TestCase( SECTION, "parseFloat('+1')", 1, parseFloat("+1") );
new TestCase( SECTION, "parseFloat('2')", 2, parseFloat("2") );
new TestCase( SECTION, "parseFloat('-2')", -2, parseFloat("-2") );
new TestCase( SECTION, "parseFloat('+2')", 2, parseFloat("+2") );
new TestCase( SECTION, "parseFloat('3')", 3, parseFloat("3") );
new TestCase( SECTION, "parseFloat('-3')", -3, parseFloat("-3") );
new TestCase( SECTION, "parseFloat('+3')", 3, parseFloat("+3") );
new TestCase( SECTION, "parseFloat('4')", 4, parseFloat("4") );
new TestCase( SECTION, "parseFloat('-4')", -4, parseFloat("-4") );
new TestCase( SECTION, "parseFloat('+4')", 4, parseFloat("+4") );
new TestCase( SECTION, "parseFloat('5')", 5, parseFloat("5") );
new TestCase( SECTION, "parseFloat('-5')", -5, parseFloat("-5") );
new TestCase( SECTION, "parseFloat('+5')", 5, parseFloat("+5") );
new TestCase( SECTION, "parseFloat('6')", 6, parseFloat("6") );
new TestCase( SECTION, "parseFloat('-6')", -6, parseFloat("-6") );
new TestCase( SECTION, "parseFloat('+6')", 6, parseFloat("+6") );
new TestCase( SECTION, "parseFloat('7')", 7, parseFloat("7") );
new TestCase( SECTION, "parseFloat('-7')", -7, parseFloat("-7") );
new TestCase( SECTION, "parseFloat('+7')", 7, parseFloat("+7") );
new TestCase( SECTION, "parseFloat('8')", 8, parseFloat("8") );
new TestCase( SECTION, "parseFloat('-8')", -8, parseFloat("-8") );
new TestCase( SECTION, "parseFloat('+8')", 8, parseFloat("+8") );
new TestCase( SECTION, "parseFloat('9')", 9, parseFloat("9") );
new TestCase( SECTION, "parseFloat('-9')", -9, parseFloat("-9") );
new TestCase( SECTION, "parseFloat('+9')", 9, parseFloat("+9") );
new TestCase( SECTION, "parseFloat('3.14159')", 3.14159, parseFloat("3.14159") );
new TestCase( SECTION, "parseFloat('-3.14159')", -3.14159, parseFloat("-3.14159") );
new TestCase( SECTION, "parseFloat('+3.14159')", 3.14159, parseFloat("+3.14159") );
new TestCase( SECTION, "parseFloat('3.')", 3, parseFloat("3.") );
new TestCase( SECTION, "parseFloat('-3.')", -3, parseFloat("-3.") );
new TestCase( SECTION, "parseFloat('+3.')", 3, parseFloat("+3.") );
new TestCase( SECTION, "parseFloat('3.e1')", 30, parseFloat("3.e1") );
new TestCase( SECTION, "parseFloat('-3.e1')", -30, parseFloat("-3.e1") );
new TestCase( SECTION, "parseFloat('+3.e1')", 30, parseFloat("+3.e1") );
new TestCase( SECTION, "parseFloat('3.e+1')", 30, parseFloat("3.e+1") );
new TestCase( SECTION, "parseFloat('-3.e+1')", -30, parseFloat("-3.e+1") );
new TestCase( SECTION, "parseFloat('+3.e+1')", 30, parseFloat("+3.e+1") );
new TestCase( SECTION, "parseFloat('3.e-1')", .30, parseFloat("3.e-1") );
new TestCase( SECTION, "parseFloat('-3.e-1')", -.30, parseFloat("-3.e-1") );
new TestCase( SECTION, "parseFloat('+3.e-1')", .30, parseFloat("+3.e-1") );
// StrDecimalLiteral::: .DecimalDigits ExponentPart opt
new TestCase( SECTION, "parseFloat('.00001')", 0.00001, parseFloat(".00001") );
new TestCase( SECTION, "parseFloat('+.00001')", 0.00001, parseFloat("+.00001") );
new TestCase( SECTION, "parseFloat('-0.0001')", -0.00001, parseFloat("-.00001") );
new TestCase( SECTION, "parseFloat('.01e2')", 1, parseFloat(".01e2") );
new TestCase( SECTION, "parseFloat('+.01e2')", 1, parseFloat("+.01e2") );
new TestCase( SECTION, "parseFloat('-.01e2')", -1, parseFloat("-.01e2") );
new TestCase( SECTION, "parseFloat('.01e+2')", 1, parseFloat(".01e+2") );
new TestCase( SECTION, "parseFloat('+.01e+2')", 1, parseFloat("+.01e+2") );
new TestCase( SECTION, "parseFloat('-.01e+2')", -1, parseFloat("-.01e+2") );
new TestCase( SECTION, "parseFloat('.01e-2')", 0.0001, parseFloat(".01e-2") );
new TestCase( SECTION, "parseFloat('+.01e-2')", 0.0001, parseFloat("+.01e-2") );
new TestCase( SECTION, "parseFloat('-.01e-2')", -0.0001, parseFloat("-.01e-2") );
// StrDecimalLiteral::: DecimalDigits ExponentPart opt
new TestCase( SECTION, "parseFloat('1234e5')", 123400000, parseFloat("1234e5") );
new TestCase( SECTION, "parseFloat('+1234e5')", 123400000, parseFloat("+1234e5") );
new TestCase( SECTION, "parseFloat('-1234e5')", -123400000, parseFloat("-1234e5") );
new TestCase( SECTION, "parseFloat('1234e+5')", 123400000, parseFloat("1234e+5") );
new TestCase( SECTION, "parseFloat('+1234e+5')", 123400000, parseFloat("+1234e+5") );
new TestCase( SECTION, "parseFloat('-1234e+5')", -123400000, parseFloat("-1234e+5") );
new TestCase( SECTION, "parseFloat('1234e-5')", 0.01234, parseFloat("1234e-5") );
new TestCase( SECTION, "parseFloat('+1234e-5')", 0.01234, parseFloat("+1234e-5") );
new TestCase( SECTION, "parseFloat('-1234e-5')", -0.01234, parseFloat("-1234e-5") );
new TestCase( SECTION, "parseFloat(0)", 0, parseFloat(0) );
new TestCase( SECTION, "parseFloat(-0)", -0, parseFloat(-0) );
new TestCase( SECTION, "parseFloat(1)", 1, parseFloat(1) );
new TestCase( SECTION, "parseFloat(-1)", -1, parseFloat(-1) );
new TestCase( SECTION, "parseFloat(2)", 2, parseFloat(2) );
new TestCase( SECTION, "parseFloat(-2)", -2, parseFloat(-2) );
new TestCase( SECTION, "parseFloat(3)", 3, parseFloat(3) );
new TestCase( SECTION, "parseFloat(-3)", -3, parseFloat(-3) );
new TestCase( SECTION, "parseFloat(4)", 4, parseFloat(4) );
new TestCase( SECTION, "parseFloat(-4)", -4, parseFloat(-4) );
new TestCase( SECTION, "parseFloat(5)", 5, parseFloat(5) );
new TestCase( SECTION, "parseFloat(-5)", -5, parseFloat(-5) );
new TestCase( SECTION, "parseFloat(6)", 6, parseFloat(6) );
new TestCase( SECTION, "parseFloat(-6)", -6, parseFloat(-6) );
new TestCase( SECTION, "parseFloat(7)", 7, parseFloat(7) );
new TestCase( SECTION, "parseFloat(-7)", -7, parseFloat(-7) );
new TestCase( SECTION, "parseFloat(8)", 8, parseFloat(8) );
new TestCase( SECTION, "parseFloat(-8)", -8, parseFloat(-8) );
new TestCase( SECTION, "parseFloat(9)", 9, parseFloat(9) );
new TestCase( SECTION, "parseFloat(-9)", -9, parseFloat(-9) );
new TestCase( SECTION, "parseFloat(3.14159)", 3.14159, parseFloat(3.14159) );
new TestCase( SECTION, "parseFloat(-3.14159)", -3.14159, parseFloat(-3.14159) );
new TestCase( SECTION, "parseFloat(3.)", 3, parseFloat(3.) );
new TestCase( SECTION, "parseFloat(-3.)", -3, parseFloat(-3.) );
new TestCase( SECTION, "parseFloat(3.e1)", 30, parseFloat(3.e1) );
new TestCase( SECTION, "parseFloat(-3.e1)", -30, parseFloat(-3.e1) );
new TestCase( SECTION, "parseFloat(3.e+1)", 30, parseFloat(3.e+1) );
new TestCase( SECTION, "parseFloat(-3.e+1)", -30, parseFloat(-3.e+1) );
new TestCase( SECTION, "parseFloat(3.e-1)", .30, parseFloat(3.e-1) );
new TestCase( SECTION, "parseFloat(-3.e-1)", -.30, parseFloat(-3.e-1) );
new TestCase( SECTION, "parseFloat(3.E1)", 30, parseFloat(3.E1) );
new TestCase( SECTION, "parseFloat(-3.E1)", -30, parseFloat(-3.E1) );
new TestCase( SECTION, "parseFloat(3.E+1)", 30, parseFloat(3.E+1) );
new TestCase( SECTION, "parseFloat(-3.E+1)", -30, parseFloat(-3.E+1) );
new TestCase( SECTION, "parseFloat(3.E-1)", .30, parseFloat(3.E-1) );
new TestCase( SECTION, "parseFloat(-3.E-1)", -.30, parseFloat(-3.E-1) );
// StrDecimalLiteral::: .DecimalDigits ExponentPart opt
new TestCase( SECTION, "parseFloat(.00001)", 0.00001, parseFloat(.00001) );
new TestCase( SECTION, "parseFloat(-0.0001)", -0.00001, parseFloat(-.00001) );
new TestCase( SECTION, "parseFloat(.01e2)", 1, parseFloat(.01e2) );
new TestCase( SECTION, "parseFloat(-.01e2)", -1, parseFloat(-.01e2) );
new TestCase( SECTION, "parseFloat(.01e+2)", 1, parseFloat(.01e+2) );
new TestCase( SECTION, "parseFloat(-.01e+2)", -1, parseFloat(-.01e+2) );
new TestCase( SECTION, "parseFloat(.01e-2)", 0.0001, parseFloat(.01e-2) );
new TestCase( SECTION, "parseFloat(-.01e-2)", -0.0001, parseFloat(-.01e-2) );
// StrDecimalLiteral::: DecimalDigits ExponentPart opt
new TestCase( SECTION, "parseFloat(1234e5)", 123400000, parseFloat(1234e5) );
new TestCase( SECTION, "parseFloat(-1234e5)", -123400000, parseFloat(-1234e5) );
new TestCase( SECTION, "parseFloat(1234e+5)", 123400000, parseFloat(1234e+5) );
new TestCase( SECTION, "parseFloat(-1234e+5)", -123400000, parseFloat(-1234e+5) );
new TestCase( SECTION, "parseFloat(1234e-5)", 0.01234, parseFloat(1234e-5) );
new TestCase( SECTION, "parseFloat(-1234e-5)", -0.01234, parseFloat(-1234e-5) );
// hex cases should all return 0 (0 is the longest string that satisfies a StringDecimalLiteral)
new TestCase( SECTION, "parseFloat('0x0')", 0, parseFloat("0x0"));
new TestCase( SECTION, "parseFloat('0x1')", 0, parseFloat("0x1"));
new TestCase( SECTION, "parseFloat('0x2')", 0, parseFloat("0x2"));
new TestCase( SECTION, "parseFloat('0x3')", 0, parseFloat("0x3"));
new TestCase( SECTION, "parseFloat('0x4')", 0, parseFloat("0x4"));
new TestCase( SECTION, "parseFloat('0x5')", 0, parseFloat("0x5"));
new TestCase( SECTION, "parseFloat('0x6')", 0, parseFloat("0x6"));
new TestCase( SECTION, "parseFloat('0x7')", 0, parseFloat("0x7"));
new TestCase( SECTION, "parseFloat('0x8')", 0, parseFloat("0x8"));
new TestCase( SECTION, "parseFloat('0x9')", 0, parseFloat("0x9"));
new TestCase( SECTION, "parseFloat('0xa')", 0, parseFloat("0xa"));
new TestCase( SECTION, "parseFloat('0xb')", 0, parseFloat("0xb"));
new TestCase( SECTION, "parseFloat('0xc')", 0, parseFloat("0xc"));
new TestCase( SECTION, "parseFloat('0xd')", 0, parseFloat("0xd"));
new TestCase( SECTION, "parseFloat('0xe')", 0, parseFloat("0xe"));
new TestCase( SECTION, "parseFloat('0xf')", 0, parseFloat("0xf"));
new TestCase( SECTION, "parseFloat('0xA')", 0, parseFloat("0xA"));
new TestCase( SECTION, "parseFloat('0xB')", 0, parseFloat("0xB"));
new TestCase( SECTION, "parseFloat('0xC')", 0, parseFloat("0xC"));
new TestCase( SECTION, "parseFloat('0xD')", 0, parseFloat("0xD"));
new TestCase( SECTION, "parseFloat('0xE')", 0, parseFloat("0xE"));
new TestCase( SECTION, "parseFloat('0xF')", 0, parseFloat("0xF"));
new TestCase( SECTION, "parseFloat('0X0')", 0, parseFloat("0X0"));
new TestCase( SECTION, "parseFloat('0X1')", 0, parseFloat("0X1"));
new TestCase( SECTION, "parseFloat('0X2')", 0, parseFloat("0X2"));
new TestCase( SECTION, "parseFloat('0X3')", 0, parseFloat("0X3"));
new TestCase( SECTION, "parseFloat('0X4')", 0, parseFloat("0X4"));
new TestCase( SECTION, "parseFloat('0X5')", 0, parseFloat("0X5"));
new TestCase( SECTION, "parseFloat('0X6')", 0, parseFloat("0X6"));
new TestCase( SECTION, "parseFloat('0X7')", 0, parseFloat("0X7"));
new TestCase( SECTION, "parseFloat('0X8')", 0, parseFloat("0X8"));
new TestCase( SECTION, "parseFloat('0X9')", 0, parseFloat("0X9"));
new TestCase( SECTION, "parseFloat('0Xa')", 0, parseFloat("0Xa"));
new TestCase( SECTION, "parseFloat('0Xb')", 0, parseFloat("0Xb"));
new TestCase( SECTION, "parseFloat('0Xc')", 0, parseFloat("0Xc"));
new TestCase( SECTION, "parseFloat('0Xd')", 0, parseFloat("0Xd"));
new TestCase( SECTION, "parseFloat('0Xe')", 0, parseFloat("0Xe"));
new TestCase( SECTION, "parseFloat('0Xf')", 0, parseFloat("0Xf"));
new TestCase( SECTION, "parseFloat('0XA')", 0, parseFloat("0XA"));
new TestCase( SECTION, "parseFloat('0XB')", 0, parseFloat("0XB"));
new TestCase( SECTION, "parseFloat('0XC')", 0, parseFloat("0XC"));
new TestCase( SECTION, "parseFloat('0XD')", 0, parseFloat("0XD"));
new TestCase( SECTION, "parseFloat('0XE')", 0, parseFloat("0XE"));
new TestCase( SECTION, "parseFloat('0XF')", 0, parseFloat("0XF"));
new TestCase( SECTION, "parseFloat(' 0XF ')", 0, parseFloat(" 0XF "));
// hex literals should still succeed
new TestCase( SECTION, "parseFloat(0x0)", 0, parseFloat(0x0));
new TestCase( SECTION, "parseFloat(0x1)", 1, parseFloat(0x1));
new TestCase( SECTION, "parseFloat(0x2)", 2, parseFloat(0x2));
new TestCase( SECTION, "parseFloat(0x3)", 3, parseFloat(0x3));
new TestCase( SECTION, "parseFloat(0x4)", 4, parseFloat(0x4));
new TestCase( SECTION, "parseFloat(0x5)", 5, parseFloat(0x5));
new TestCase( SECTION, "parseFloat(0x6)", 6, parseFloat(0x6));
new TestCase( SECTION, "parseFloat(0x7)", 7, parseFloat(0x7));
new TestCase( SECTION, "parseFloat(0x8)", 8, parseFloat(0x8));
new TestCase( SECTION, "parseFloat(0x9)", 9, parseFloat(0x9));
new TestCase( SECTION, "parseFloat(0xa)", 10, parseFloat(0xa));
new TestCase( SECTION, "parseFloat(0xb)", 11, parseFloat(0xb));
new TestCase( SECTION, "parseFloat(0xc)", 12, parseFloat(0xc));
new TestCase( SECTION, "parseFloat(0xd)", 13, parseFloat(0xd));
new TestCase( SECTION, "parseFloat(0xe)", 14, parseFloat(0xe));
new TestCase( SECTION, "parseFloat(0xf)", 15, parseFloat(0xf));
new TestCase( SECTION, "parseFloat(0xA)", 10, parseFloat(0xA));
new TestCase( SECTION, "parseFloat(0xB)", 11, parseFloat(0xB));
new TestCase( SECTION, "parseFloat(0xC)", 12, parseFloat(0xC));
new TestCase( SECTION, "parseFloat(0xD)", 13, parseFloat(0xD));
new TestCase( SECTION, "parseFloat(0xE)", 14, parseFloat(0xE));
new TestCase( SECTION, "parseFloat(0xF)", 15, parseFloat(0xF));
new TestCase( SECTION, "parseFloat(0X0)", 0, parseFloat(0X0));
new TestCase( SECTION, "parseFloat(0X1)", 1, parseFloat(0X1));
new TestCase( SECTION, "parseFloat(0X2)", 2, parseFloat(0X2));
new TestCase( SECTION, "parseFloat(0X3)", 3, parseFloat(0X3));
new TestCase( SECTION, "parseFloat(0X4)", 4, parseFloat(0X4));
new TestCase( SECTION, "parseFloat(0X5)", 5, parseFloat(0X5));
new TestCase( SECTION, "parseFloat(0X6)", 6, parseFloat(0X6));
new TestCase( SECTION, "parseFloat(0X7)", 7, parseFloat(0X7));
new TestCase( SECTION, "parseFloat(0X8)", 8, parseFloat(0X8));
new TestCase( SECTION, "parseFloat(0X9)", 9, parseFloat(0X9));
new TestCase( SECTION, "parseFloat(0Xa)", 10, parseFloat(0Xa));
new TestCase( SECTION, "parseFloat(0Xb)", 11, parseFloat(0Xb));
new TestCase( SECTION, "parseFloat(0Xc)", 12, parseFloat(0Xc));
new TestCase( SECTION, "parseFloat(0Xd)", 13, parseFloat(0Xd));
new TestCase( SECTION, "parseFloat(0Xe)", 14, parseFloat(0Xe));
new TestCase( SECTION, "parseFloat(0Xf)", 15, parseFloat(0Xf));
new TestCase( SECTION, "parseFloat(0XA)", 10, parseFloat(0XA));
new TestCase( SECTION, "parseFloat(0XB)", 11, parseFloat(0XB));
new TestCase( SECTION, "parseFloat(0XC)", 12, parseFloat(0XC));
new TestCase( SECTION, "parseFloat(0XD)", 13, parseFloat(0XD));
new TestCase( SECTION, "parseFloat(0XE)", 14, parseFloat(0XE));
new TestCase( SECTION, "parseFloat(0XF)", 15, parseFloat(0XF));
// A StringNumericLiteral may not use octal notation
new TestCase( SECTION, "parseFloat('00')", 0, parseFloat("00"));
new TestCase( SECTION, "parseFloat('01')", 1, parseFloat("01"));
new TestCase( SECTION, "parseFloat('02')", 2, parseFloat("02"));
new TestCase( SECTION, "parseFloat('03')", 3, parseFloat("03"));
new TestCase( SECTION, "parseFloat('04')", 4, parseFloat("04"));
new TestCase( SECTION, "parseFloat('05')", 5, parseFloat("05"));
new TestCase( SECTION, "parseFloat('06')", 6, parseFloat("06"));
new TestCase( SECTION, "parseFloat('07')", 7, parseFloat("07"));
new TestCase( SECTION, "parseFloat('010')", 10, parseFloat("010"));
new TestCase( SECTION, "parseFloat('011')", 11, parseFloat("011"));
// A StringNumericLIteral may have any number of leading 0 digits
new TestCase( SECTION, "parseFloat('001')", 1, parseFloat("001"));
new TestCase( SECTION, "parseFloat('0001')", 1, parseFloat("0001"));
new TestCase( SECTION, "parseFloat(' 0001 ')", 1, parseFloat(" 0001 "));
// an octal numeric literal should be treated as an octal
new TestCase( SECTION, "parseFloat(00)", 0, parseFloat(00));
new TestCase( SECTION, "parseFloat(01)", 1, parseFloat(01));
new TestCase( SECTION, "parseFloat(02)", 2, parseFloat(02));
new TestCase( SECTION, "parseFloat(03)", 3, parseFloat(03));
new TestCase( SECTION, "parseFloat(04)", 4, parseFloat(04));
new TestCase( SECTION, "parseFloat(05)", 5, parseFloat(05));
new TestCase( SECTION, "parseFloat(06)", 6, parseFloat(06));
new TestCase( SECTION, "parseFloat(07)", 7, parseFloat(07));
new TestCase( SECTION, "parseFloat(010)", 8, parseFloat(010));
new TestCase( SECTION, "parseFloat(011)", 9, parseFloat(011));
// A StringNumericLIteral may have any number of leading 0 digits
new TestCase( SECTION, "parseFloat(001)", 1, parseFloat(001));
new TestCase( SECTION, "parseFloat(0001)", 1, parseFloat(0001));
// make sure it's reflexive
new TestCase( SECTION, "parseFloat(Math.PI)", Math.PI, parseFloat(Math.PI));
new TestCase( SECTION, "parseFloat(Math.LN2)", Math.LN2, parseFloat(Math.LN2));
new TestCase( SECTION, "parseFloat(Math.LN10)", Math.LN10, parseFloat(Math.LN10));
new TestCase( SECTION, "parseFloat(Math.LOG2E)", Math.LOG2E, parseFloat(Math.LOG2E));
new TestCase( SECTION, "parseFloat(Math.LOG10E)", Math.LOG10E, parseFloat(Math.LOG10E));
new TestCase( SECTION, "parseFloat(Math.SQRT2)", Math.SQRT2, parseFloat(Math.SQRT2));
new TestCase( SECTION, "parseFloat(Math.SQRT1_2)", Math.SQRT1_2, parseFloat(Math.SQRT1_2));
new TestCase( SECTION, "parseFloat(Math.PI+'')", Math.PI, parseFloat(Math.PI+''));
new TestCase( SECTION, "parseFloat(Math.LN2+'')", Math.LN2, parseFloat(Math.LN2+''));
new TestCase( SECTION, "parseFloat(Math.LN10+'')", Math.LN10, parseFloat(Math.LN10+''));
new TestCase( SECTION, "parseFloat(Math.LOG2E+'')", Math.LOG2E, parseFloat(Math.LOG2E+''));
new TestCase( SECTION, "parseFloat(Math.LOG10E+'')", Math.LOG10E, parseFloat(Math.LOG10E+''));
new TestCase( SECTION, "parseFloat(Math.SQRT2+'')", Math.SQRT2, parseFloat(Math.SQRT2+''));
new TestCase( SECTION, "parseFloat(Math.SQRT1_2+'')", Math.SQRT1_2, parseFloat(Math.SQRT1_2+''));
test();
© 2015 - 2024 Weber Informatics LLC | Privacy Policy