Testing by Assertions
Length Check
Check a sequence length against the expected count.
count assertion
The length operator returns a number that can be compared just like any other computed result.
Length Check
length_check.lua
Replay: real traced execution (multi-file project)
local expected = 3
local actual = #{"red", "green", "blue"}
local passed = actual == expected
local status = "fail"
if passed then
status = "pass"
end
print("expected=" .. expected)
print("actual=" .. actual)
print("status=" .. status)
local expected = 2
local actual = #{"red", "green", "blue"}
local passed = actual == expected
local status = "fail"
if passed then
status = "pass"
end
print("expected=" .. expected)
print("actual=" .. actual)
print("status=" .. status)
local expected = 4
local actual = #{"red", "green", "blue"}
local passed = actual == expected
local status = "fail"
if passed then
status = "pass"
end
print("expected=" .. expected)
print("actual=" .. actual)
print("status=" .. status)
expected ← 3, actual ← 3, passed ← true, status ← fail
1local expected→ 3 = 3 --@expected=2, 42local actual→ 3 = #{"red", "green", "blue"}3local passed→ true = actual3 == expected34local status→ fail = "fail"5if passed thenstatus ← pass
4local status = "fail"5if passedtrue then6 status→ pass = "pass"7endprint("expected=" .. expected)
7end8print("expected=" .. expected3)9print("actual=" .. actual3)10print("status=" .. statuspass)outputexpected=3 actual=3 status=pass
expected ← 2, actual ← 3, passed ← false, status ← fail
1local expected→ 2 = 22local actual→ 3 = #{"red", "green", "blue"}3local passed→ false = actual3 == expected24local status→ fail = "fail"5if passed then6 status = "pass"7end8print("expected=" .. expected2)9print("actual=" .. actual3)10print("status=" .. statusfail)outputexpected=2 actual=3 status=fail
expected ← 4, actual ← 3, passed ← false, status ← fail
1local expected→ 4 = 42local actual→ 3 = #{"red", "green", "blue"}3local passed→ false = actual3 == expected44local status→ fail = "fail"5if passed then6 status = "pass"7end8print("expected=" .. expected4)9print("actual=" .. actual3)10print("status=" .. statusfail)outputexpected=4 actual=3 status=fail