parseIntTests.js (688B)
1 function parseIntHelper(n) { 2 var a; 3 for (var i = 0; i < 5; i++) 4 a = parseInt(n); 5 return a; 6 } 7 function doParseIntTests() { 8 var inputs = [0, -0, .1, -.1, .7, -.7, 1.3, -1.3]; 9 var outputs = new Array(8); 10 //avoid jit, unrolled 11 outputs[0] = outputs[1] = outputs[2] = outputs[4] = 0; 12 outputs[3] = outputs[5] = -0; 13 outputs[6] = 1; 14 outputs[7] = -1; 15 for (var i = 0; i < 8; i++) { 16 var n = Object.is(inputs[i], -0) ? "-0" : String(inputs[i]); 17 var testfn = new Function('return parseIntHelper(' + n + ');'); 18 assertEq(testfn(), outputs[i]); 19 } 20 } 21 doParseIntTests(); 22 23 assertEq(parseInt("08"), 8); 24 assertEq(parseInt("09"), 9);