abstract class sys::Test

sys::Obj
  sys::Test

Source

Test is the base for Fantom unit tests.

See Fant.

curTestMethod

Method curTestMethod()

Source

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.

fail

Void fail(Str? msg := null)

Source

Throw a test failure exception. If msg is non-null, include it in the failure exception.

make

new make()

Source

Protected constructor.

setup

virtual Void setup()

Source

Setup is called before running each test method.

teardown

virtual Void teardown()

Source

Teardown is called after running every test method.

tempDir

File tempDir()

Source

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/".

verify

Void verify(Bool cond, Str? msg := null)

Source

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.

verifyEq

Void verifyEq(Obj? a, Obj? b, Str? msg := null)

Source

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.

verifyErr

Void verifyErr(Type? errType, |Test| c)

Source

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("@#!") }
verifyErrMsg

Void verifyErrMsg(Type errType, Str errMsg, |Test| c)

Source

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")
}
verifyFalse

Void verifyFalse(Bool cond, Str? msg := null)

Source

Verify that cond is false, otherwise throw a test failure exception. If msg is non-null, include it in a failure exception.

verifyNotEq

Void verifyNotEq(Obj? a, Obj? b, Str? msg := null)

Source

Verify that a != b, otherwise throw a test failure exception. If msg is non-null, include it in failure exception.

verifyNotNull

Void verifyNotNull(Obj? a, Str? msg := null)

Source

Verify that a is not null, otherwise throw a test failure exception. If msg is non-null, include it in a failure exception.

verifyNotSame

Void verifyNotSame(Obj? a, Obj? b, Str? msg := null)

Source

Verify that a !== b, otherwise throw a test failure exception. If msg is non-null, include it in failure exception.

verifyNull

Void verifyNull(Obj? a, Str? msg := null)

Source

Verify that a is null, otherwise throw a test failure exception. If msg is non-null, include it in a failure exception.

verifySame

Void verifySame(Obj? a, Obj? b, Str? msg := null)

Source

Verify that a === b, otherwise throw a test failure exception. If msg is non-null, include it in failure exception.

verifyTrue

Void verifyTrue(Bool cond, Str? msg := null)

Source

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.

verifyType

Void verifyType(Obj obj, Type t)

Source

Verify that Type.of(obj) equals the given type.