Files
regorus/tests/interpreter/cases/arithmetic/tests.yaml
2026-01-31 07:27:51 +05:30

119 lines
2.2 KiB
YAML

# Copyright (c) Microsoft Corporation.
# Licensed under the MIT License.
cases:
- note: negative-integer-literal-in-arithmetic-expressions
data: {}
modules:
- |
# In the following, the negative integer must be broken into a - and an integer tokens
# when in arighmetic expression contexts
package test
a = 1+1-1
b = 1 +1 -1
c = 1 + 1 - 1
d = -1 -1
query: data.test
want_result:
a: 1
b: 1
c: 1
d: -2
- note: integer-float-equality
data: {}
modules:
- |
package test
eq1 = 1 == 1.0
eq2 = 1 == 1.00
neq1 = 1 != 1.0001
query: data.test
want_result:
eq1: true
eq2: true
neq1: true
- note: float-precision
data: {}
modules:
- |
package test
sum = 0.1 + 0.2
diff = 0.3 - 0.2
product = 0.1 * 0.2
quotient = 0.3 / 0.1
query: data.test
want_result:
sum: 0.30000000000000004
diff: 0.09999999999999998
product: 0.020000000000000004
quotient: 2.9999999999999996
- note: numeric-comparisons
data: {}
modules:
- |
package test
lt = 1 < 1.0001
le = 1 <= 1.0
gt = 1.0001 > 1
ge = 1.0 >= 1
neg_lt = -1 < 0
neg_le = -1 <= -1
query: data.test
want_result:
lt: true
le: true
gt: true
ge: true
neg_lt: true
neg_le: true
- note: division
data: {}
modules:
- |
package test
div1 = 1 / 2
div2 = 5 / 2
query: data.test
want_result:
div1: 0.5
div2: 2.5
- note: negative-number-arithmetic
data: {}
modules:
- |
package test
neg1 = -1
neg2 = -1 + 2
neg3 = 0 - (2 + 3)
neg4 = 1 - -1
query: data.test
want_result:
neg1: -1
neg2: 1
neg3: -5
neg4: 2
- note: big-numbers
data: {}
modules:
- |
package test
big1 = 1000000000000000000000 + 1
big2 = 2 * 1000000000000000000000
big3 = 2 / 1e18
query: data.test
want_result:
big1: 1000000000000000000001
big2: 2000000000000000000000
big3: 2e-18