mirror of
https://github.com/krgamestudios/Toy.git
synced 2026-04-16 07:14:07 +10:00
49 lines
1.0 KiB
Plaintext
49 lines
1.0 KiB
Plaintext
//test operators (integers)
|
|
assert 1 + 1 == 2, "1 + 1 == 2";
|
|
assert 1 - 1 == 0, "1 - 1 == 0";
|
|
assert 2 * 2 == 4, "2 * 2 == 4";
|
|
assert 1 / 2 == 0, "1 / 2 == 0"; //integer division
|
|
assert 5 % 2 == 1, "5 % 2 == 1";
|
|
|
|
//test operators (floats)
|
|
assert 1.0 + 1.0 == 2.0, "1.0 + 1.0 == 2.0";
|
|
assert 1.0 - 1.0 == 0.0, "1.0 - 1.0 == 0.0";
|
|
assert 2.0 * 2.0 == 4.0, "2.0 * 2.0 == 4.0";
|
|
assert 1.0 / 2.0 == 0.5, "1.0 / 2.0 == 0.5";
|
|
|
|
|
|
var a = 10;
|
|
|
|
a += 20;
|
|
a -= 25;
|
|
|
|
assert a == 5, "+= or -= failed";
|
|
|
|
a *= 5;
|
|
a /= 2;
|
|
|
|
assert a == 12, "*= or /= failed";
|
|
|
|
a %= 8;
|
|
|
|
assert a == 4, "%= failed";
|
|
|
|
//strings as special cases
|
|
var s = "foo";
|
|
|
|
assert s + "bar" == "foobar", "string addition failed";
|
|
assert s == "foo", "string addition failed (was too sticky)";
|
|
|
|
s += "bar";
|
|
|
|
assert s == "foobar", "string addition failed (wasn't sticky enough)";
|
|
|
|
//check order of operations
|
|
assert 30 / 3 * 2 == 20, "Order of operations failed (raw numbers)";
|
|
var x = 30;
|
|
var y = 3;
|
|
var z = 2;
|
|
assert x / y * z == 20, "Order of operations failed (variables)";
|
|
|
|
|
|
print "All good"; |