ucg/integration_tests/operator_precedence_test.ucg
Jeremy Wall d989e47706 FEATURE: Use a better DSL for unit tests.
* Assert now requires a tuple instead of a string containing
  statements.
* We include a helpful ucg based unit testing module.

Fixes: #26
2019-01-10 17:17:57 -06:00

54 lines
936 B
Plaintext

assert {
ok = 2 * 2 + 1 == 5,
desc = "2 * 2 + 1 == 5",
};
assert {
ok = 2 + 2 * 3 == 8,
desc = "2 + 2 * 3 == 8",
};
assert {
ok = 2 * (2 + 1) == 6,
desc = "2 * (2 + 1) == 6",
};
assert {
ok = 2 * 2 + 1 > 4,
desc = "2 * 2 + 1 > 4",
};
assert {
ok = 2 * 2 + 1 < 6,
desc = "2 * 2 + 1 < 6",
};
assert {
ok = 2 * 2 + 1 >= 5,
desc = "2 * 2 + 1 >= 5",
};
assert {
ok = 2 * 2 + 1 <= 5,
desc = "2 * 2 + 1 <= 5",
};
assert {
ok = 2 / 2 == 1,
desc = "2 / 2 == 1",
};
assert {
ok = 2 - 1 == 1,
desc = "2 - 1 == 1",
};
assert {
ok = 1 + 1 + 1 + 1 == 4,
desc = "1 + 1 + 1 + 1 == 4",
};
assert {
ok = 1 + 1 + 2 * 2 + 1 + 1 == 1 + 1 + (2 * 2) + 1 + 1,
desc = "1 + 1 + 2 * 2 + 1 + 1 == 1 + 1 + (2 * 2) + 1 + 1",
};
let tpl = {
one = {
two = 12,
},
};
assert {
ok = 1 + tpl.one.two * 2 + 3 == 28,
desc = "1 + tpl.one.two * 2 + 3 == 28",
};