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

assert.sameValue(
  9007199254740993n < '9007199254740992',
  false,
  'The result of (9007199254740993n < "9007199254740992") is false'
);

assert.sameValue(
  '9007199254740993' < 9007199254740992n,
  false,
  'The result of ("9007199254740993" < 9007199254740992n) is false'
);

assert.sameValue(
  -9007199254740992n < '-9007199254740993',
  false,
  'The result of (-9007199254740992n < "-9007199254740993") is false'
);

assert.sameValue(
  '-9007199254740992' < -9007199254740993n,
  false,
  'The result of ("-9007199254740992" < -9007199254740993n) is false'
);

reportCompare(0, 0);