test suite test list
test case test empty()
strings : empty[string] • new()
assert strings • is empty
assert strings • size == 0
slice : strings • slice(0, 0)
assert slice • is empty
assert !slice • is not empty
assert slice • size == 0
test case test simple list()
strings : base list[string] • new()
assert strings • is empty
assert strings • size == 0
strings • append("foo")
assert strings • size == 1
assert !strings • is empty
assert strings • is not empty
assert strings • first == "foo"
assert strings • last == "foo"
assert strings[0] == "foo"
strings • append("bar")
assert strings • size == 2
assert !strings • is empty
assert strings • is not empty
assert strings • first == "foo"
assert strings • last == "bar"
assert strings[0] == "foo"
assert strings[1] == "bar"
string removed : strings • remove last()
assert removed == "bar"
assert strings • size == 1
assert !strings • is empty
assert strings • is not empty
assert strings • first == "foo"
assert strings • last == "foo"
assert strings[0] == "foo"
test case test list elements()
strings : base list[string] • new()
assert strings • is empty
assert !strings • is not empty
assert strings • size == 0
strings • append("foo")
assert strings • size == 1
assert !strings • is empty
assert strings • is not empty
assert strings • first == "foo"
assert strings • last == "foo"
assert strings[0] == "foo"
elements : strings • elements
assert elements • size == 1
assert !elements • is empty
assert strings • is not empty
assert elements • first == "foo"
assert elements • last == "foo"
assert elements[0] == "foo"
assert strings • size == 1
strings • append("bar")
assert strings • size == 2
assert !strings • is empty
assert strings • is not empty
assert strings • first == "foo"
assert strings • last == "bar"
assert strings[0] == "foo"
assert strings[1] == "bar"
test case test list remove()
strings : base list[string] • new()
strings • append("foo")
strings • append("bar")
strings • append("baz")
assert strings • size == 3
assert !strings • is empty
assert strings • is not empty
assert strings • first == "foo"
assert strings • last == "baz"
assert strings[0] == "foo"
assert strings[1] == "bar"
assert strings[2] == "baz"
strings • remove at(1)
assert strings • size == 2
assert !strings • is empty
assert strings • is not empty
assert strings • first == "foo"
assert strings • last == "baz"
assert strings[0] == "foo"
assert strings[1] == "baz"
strings • remove at(0)
assert strings • size == 1
assert !strings • is empty
assert strings • is not empty
assert strings • first == "baz"
assert strings • last == "baz"
assert strings[0] == "baz"
strings • remove at(0)
assert strings • size == 0
assert strings • is empty
assert !strings • is not empty
test case test list sort()
numbers : base list[integer] • new()
numbers • append all([-1, 68, 42, -2, 0])
numbers • sort(number order • new())
assert numbers • size == 5
assert numbers[0] == -2
assert numbers[1] == -1
assert numbers[2] == 0
assert numbers[3] == 42
assert numbers[4] == 68
private class number order
implements order[integer]
implement implicit sign call(integer first, integer second)
return first <=> second