bigint-and-incomparable-primitive.js (1544B)
1 // Copyright (C) 2017 Josh Wolfe. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 /*--- 4 description: Non-strict inequality comparison of BigInt and miscellaneous primitive values 5 esid: sec-equality-operators-runtime-semantics-evaluation 6 info: | 7 EqualityExpression : EqualityExpression != RelationalExpression 8 ... 9 5. Return the result of performing Abstract Equality Comparison rval == lval. 10 6. If r is true, return false. Otherwise, return true. 11 12 features: [BigInt, Symbol] 13 ---*/ 14 assert.sameValue(0n != undefined, true, 'The result of (0n != undefined) is true'); 15 assert.sameValue(undefined != 0n, true, 'The result of (undefined != 0n) is true'); 16 assert.sameValue(1n != undefined, true, 'The result of (1n != undefined) is true'); 17 assert.sameValue(undefined != 1n, true, 'The result of (undefined != 1n) is true'); 18 assert.sameValue(0n != null, true, 'The result of (0n != null) is true'); 19 assert.sameValue(null != 0n, true, 'The result of (null != 0n) is true'); 20 assert.sameValue(1n != null, true, 'The result of (1n != null) is true'); 21 assert.sameValue(null != 1n, true, 'The result of (null != 1n) is true'); 22 assert.sameValue(0n != Symbol('1'), true, 'The result of (0n != Symbol("1")) is true'); 23 assert.sameValue(Symbol('1') != 0n, true, 'The result of (Symbol("1") != 0n) is true'); 24 assert.sameValue(1n != Symbol('1'), true, 'The result of (1n != Symbol("1")) is true'); 25 assert.sameValue(Symbol('1') != 1n, true, 'The result of (Symbol("1") != 1n) is true'); 26 27 reportCompare(0, 0);