sys::Obj sys::Test
Test is the base for Fantom unit tests.
See Fant.
Method curTestMethod()
Get the current test method being executed or throw Err if not currently running a test. This method is available during both setup and teardown as well as during the test itself.
Throw a test failure exception. If msg is non-null, include it in the failure exception.
new make()
Protected constructor.
virtual Void setup()
Setup is called before running each test method.
virtual Void teardown()
Teardown is called after running every test method.
File tempDir()
Return a temporary test directory which may used as a scratch directory. This directory is guaranteed to be created and empty the first time this method is called for a given test run. The test directory is "{Env.cur.tempDir}/test/".
Void verify(Bool cond, Str? msg := null)
Verify that cond is true, otherwise throw a test failure exception. If msg is non-null, include it in a failure exception. Identical to verifyTrue .
Void verifyEq(Obj? a, Obj? b, Str? msg := null)
Verify that a == b, otherwise throw a test failure exception. If both a and b are nonnull, then this method also ensures that a.hash == b.hash, because any two objects which return true for equals() must also return the same hash code. If msg is non-null, include it in failure exception.
Void verifyErr(Type? errType, |Test| c)
Verify that the function throws an Err of the exact same type as errType (compare using === operator). If the errType parameter is null, then this method tests only that an exception is thrown, not its type.
Example:
verifyErr(ParseErr#) { x := Int.fromStr("@#!") }
Void verifyErrMsg(Type errType, Str errMsg, |Test| c)
Verify that the function throws an Err. The Err must be the exact same type as errType and the contained msg must be the same as errMsg.
Example:
verifyErrMsg(ParseErr#, "Invalid Int: 'ABC'")
{
x := Int.fromStr("ABC")
}
Void verifyFalse(Bool cond, Str? msg := null)
Verify that cond is false, otherwise throw a test failure exception. If msg is non-null, include it in a failure exception.
Void verifyNotEq(Obj? a, Obj? b, Str? msg := null)
Verify that a != b, otherwise throw a test failure exception. If msg is non-null, include it in failure exception.
Void verifyNotNull(Obj? a, Str? msg := null)
Verify that a is not null, otherwise throw a test failure exception. If msg is non-null, include it in a failure exception.
Void verifyNotSame(Obj? a, Obj? b, Str? msg := null)
Verify that a !== b, otherwise throw a test failure exception. If msg is non-null, include it in failure exception.
Void verifyNull(Obj? a, Str? msg := null)
Verify that a is null, otherwise throw a test failure exception. If msg is non-null, include it in a failure exception.
Void verifySame(Obj? a, Obj? b, Str? msg := null)
Verify that a === b, otherwise throw a test failure exception. If msg is non-null, include it in failure exception.
Void verifyTrue(Bool cond, Str? msg := null)
Verify that cond is true, otherwise throw a test failure exception. If msg is non-null, include it in a failure exception. Identical to verify .
Void verifyType(Obj obj, Type t)
Verify that Type.of(obj) equals the given type.
sys 1.0.82∙26-Jun-2025 Thu 13:18:34 EDT