Skip to content
Snippets Groups Projects
Commit 3685e6b7 authored by Leonardo Balter's avatar Leonardo Balter Committed by Mike Pennisi
Browse files

Update and add tests for Number.isNaN

parent c246bc7d
No related branches found
No related tags found
No related merge requests found
// Copyright (c) 2014 Ryan Lewis. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
es6id: 20.1.2.4
author: Ryan Lewis
description: Number.IsNaN should return false if called with a boolean.
---*/
assert.sameValue(Number.isNaN(true), false, 'Number.isNaN(true)');
// Copyright (c) 2014 Ryan Lewis. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
es6id: 20.1.2.4
author: Ryan Lewis
description: >
Number.IsNaN should return false if called with a non-number
Object.
---*/
assert.sameValue(Number.isNaN(new Object()), false, 'Number.isNaN(new Object())');
// Copyright (c) 2014 Ryan Lewis. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
es6id: 20.1.2.4
author: Ryan Lewis
description: Number.IsNaN should return false if called with a String.
---*/
assert.sameValue(Number.isNaN('string'), false, 'Number.isNaN("string")');
// Copyright (c) 2014 Ryan Lewis. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
es6id: 20.1.2.4
esid: sec-number.isnan
description: >
Return false if argument is not Number
info: |
Number.isNaN ( number )
1. If Type(number) is not Number, return false.
[...]
features: [Symbol]
---*/
assert.sameValue(Number.isNaN("NaN"), false, "string");
assert.sameValue(Number.isNaN([NaN]), false, "[NaN]");
assert.sameValue(Number.isNaN(new Number(NaN)), false, "Number object");
assert.sameValue(Number.isNaN(false), false, "false");
assert.sameValue(Number.isNaN(true), false, "true");
assert.sameValue(Number.isNaN(undefined), false, "undefined");
assert.sameValue(Number.isNaN(null), false, "null");
assert.sameValue(Number.isNaN(Symbol("1")), false, "symbol");
assert.sameValue(Number.isNaN(), false, "no arg");
// Copyright (c) 2016 The V8 Project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
es6id: 20.1.2.4
esid: sec-number.isnan
description: >
Return false if argument is not NaN
info: |
Number.isNaN ( number )
1. If Type(number) is not Number, return false.
2. If number is NaN, return true.
3. Otherwise, return false.
---*/
assert.sameValue(Number.isNaN(0), false, "0");
assert.sameValue(Number.isNaN(-0), false, "-0");
assert.sameValue(Number.isNaN(1), false, "1");
assert.sameValue(Number.isNaN(-1), false, "-1");
assert.sameValue(Number.isNaN(1.1), false, "1.1");
assert.sameValue(Number.isNaN(1e10), false, "1e10");
assert.sameValue(Number.isNaN(Infinity), false, "Infinity");
assert.sameValue(Number.isNaN(-Infinity), false, "-Infinity");
// Copyright (C) 2016 The V8 Project authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
es6id: 20.1.2.4
esid: sec-number.isnan
description: >
"isNaN" property of Number
info: >
17 ECMAScript Standard Built-in Objects:
Every other data property described in clauses 18 through 26 and in Annex B.2
has the attributes { [[Writable]]: true, [[Enumerable]]: false,
[[Configurable]]: true } unless otherwise specified.
includes: [propertyHelper.js]
---*/
verifyNotEnumerable(Number, "isNaN");
verifyWritable(Number, "isNaN");
verifyConfigurable(Number, "isNaN");
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment