bigint-and-string.js (2994B)
1 // Copyright (C) 2018 Igalia, S.L. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 /*--- 4 description: Relational comparison of BigInt and string values 5 esid: sec-abstract-relational-comparison 6 features: [BigInt] 7 ---*/ 8 assert.sameValue(0n < '0', false, 'The result of (0n < "0") is false'); 9 assert.sameValue('0' < 0n, false, 'The result of ("0" < 0n) is false'); 10 assert.sameValue(0n < '1', true, 'The result of (0n < "1") is true'); 11 assert.sameValue('0' < 1n, true, 'The result of ("0" < 1n) is true'); 12 assert.sameValue(1n < '0', false, 'The result of (1n < "0") is false'); 13 assert.sameValue('1' < 0n, false, 'The result of ("1" < 0n) is false'); 14 assert.sameValue(0n < '', false, 'The result of (0n < "") is false'); 15 assert.sameValue('' < 0n, false, 'The result of ("" < 0n) is false'); 16 assert.sameValue(0n < '1', true, 'The result of (0n < "1") is true'); 17 assert.sameValue('' < 1n, true, 'The result of ("" < 1n) is true'); 18 assert.sameValue(1n < '', false, 'The result of (1n < "") is false'); 19 assert.sameValue('1' < 0n, false, 'The result of ("1" < 0n) is false'); 20 assert.sameValue(1n < '1', false, 'The result of (1n < "1") is false'); 21 assert.sameValue('1' < 1n, false, 'The result of ("1" < 1n) is false'); 22 assert.sameValue(1n < '-1', false, 'The result of (1n < "-1") is false'); 23 assert.sameValue('1' < -1n, false, 'The result of ("1" < -1n) is false'); 24 assert.sameValue(-1n < '1', true, 'The result of (-1n < "1") is true'); 25 assert.sameValue('-1' < 1n, true, 'The result of ("-1" < 1n) is true'); 26 assert.sameValue(-1n < '-1', false, 'The result of (-1n < "-1") is false'); 27 assert.sameValue('-1' < -1n, false, 'The result of ("-1" < -1n) is false'); 28 assert.sameValue('0x10' < 15n, false, 'The result of ("0x10" < 15n) is false'); 29 assert.sameValue('0x10' < 16n, false, 'The result of ("0x10" < 16n) is false'); 30 assert.sameValue('0x10' < 17n, true, 'The result of ("0x10" < 17n) is true'); 31 assert.sameValue('0o10' < 7n, false, 'The result of ("0o10" < 7n) is false'); 32 assert.sameValue('0o10' < 8n, false, 'The result of ("0o10" < 8n) is false'); 33 assert.sameValue('0o10' < 9n, true, 'The result of ("0o10" < 9n) is true'); 34 assert.sameValue('0b10' < 1n, false, 'The result of ("0b10" < 1n) is false'); 35 assert.sameValue('0b10' < 2n, false, 'The result of ("0b10" < 2n) is false'); 36 assert.sameValue('0b10' < 3n, true, 'The result of ("0b10" < 3n) is true'); 37 38 assert.sameValue( 39 9007199254740993n < '9007199254740992', 40 false, 41 'The result of (9007199254740993n < "9007199254740992") is false' 42 ); 43 44 assert.sameValue( 45 '9007199254740993' < 9007199254740992n, 46 false, 47 'The result of ("9007199254740993" < 9007199254740992n) is false' 48 ); 49 50 assert.sameValue( 51 -9007199254740992n < '-9007199254740993', 52 false, 53 'The result of (-9007199254740992n < "-9007199254740993") is false' 54 ); 55 56 assert.sameValue( 57 '-9007199254740992' < -9007199254740993n, 58 false, 59 'The result of ("-9007199254740992" < -9007199254740993n) is false' 60 ); 61 62 reportCompare(0, 0);