bigint-and-incomparable-primitive.js (1507B)
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 equality 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 11 features: [BigInt, Symbol] 12 ---*/ 13 assert.sameValue(0n == undefined, false, 'The result of (0n == undefined) is false'); 14 assert.sameValue(undefined == 0n, false, 'The result of (undefined == 0n) is false'); 15 assert.sameValue(1n == undefined, false, 'The result of (1n == undefined) is false'); 16 assert.sameValue(undefined == 1n, false, 'The result of (undefined == 1n) is false'); 17 assert.sameValue(0n == null, false, 'The result of (0n == null) is false'); 18 assert.sameValue(null == 0n, false, 'The result of (null == 0n) is false'); 19 assert.sameValue(1n == null, false, 'The result of (1n == null) is false'); 20 assert.sameValue(null == 1n, false, 'The result of (null == 1n) is false'); 21 assert.sameValue(0n == Symbol('1'), false, 'The result of (0n == Symbol("1")) is false'); 22 assert.sameValue(Symbol('1') == 0n, false, 'The result of (Symbol("1") == 0n) is false'); 23 assert.sameValue(1n == Symbol('1'), false, 'The result of (1n == Symbol("1")) is false'); 24 assert.sameValue(Symbol('1') == 1n, false, 'The result of (Symbol("1") == 1n) is false'); 25 26 reportCompare(0, 0);