Corrected the order of arguments to Toy_callLiteralFn()

This commit is contained in:
2023-02-14 08:00:35 +00:00
parent b55b8e879e
commit eae96d6403
4 changed files with 71 additions and 79 deletions

View File

@@ -1,27 +1,28 @@
import compound;
import standard;
fn less(a, b) {
return a < b;
}
//test every
{
var a = [1, 2, 3];
var d = ["one": 1, "two": 2];
fn greater(a, b) {
return a > b;
}
var counter = 0;
fn f(k, v) {
print " > " + string k + " : " + string v;
counter++;
return v;
}
var a = [7, 2, 1, 8, 6, 3, 5, 4];
var b = [7, 2, 1, 4, 6, 3, 5, 8];
var c = [1, 2, 3, 4, 5, 6, 7, 8];
var d = [7, 2, 1, 8, 6, 3, 5, 4];
assert a.every(f) == true, "array.every() == true failed";
assert d.every(f) == true, "dictionary.every() == true failed";
a = a.sort(less);
b = b.sort(less);
c = c.sort(less);
d = d.sort(greater);
assert counter == 5, "Unexpected number of calls for _every() == true";
assert a == [1, 2, 3, 4, 5, 6, 7, 8], "array.sort(less) failed";
assert b == [1, 2, 3, 4, 5, 6, 7, 8], "array.sort(less) with pivot high failed";
assert c == [1, 2, 3, 4, 5, 6, 7, 8], "array.sort(less) pre-sorted array failed";
assert d == [8, 7, 6, 5, 4, 3, 2, 1], "array.sort(greater) failed";
counter = 0;
a[1] = false;
d["two"] = false;
assert a.every(f) == false, "array.every() == false failed";
assert d.every(f) == false, "dictionary.every() == false failed";
print "All good";
assert counter == 4, "Unexpected number of calls for _every() == false";
}