test := import("test") skip := func(...args) { test.skip(args...) } skipf := func(msg, ...args) { skip(format(msg, args...)) } fail := func(...args) { test.fail(args...) } failf := func(msg, ...args) { fail(format(msg, args...)) } log := func(...args) { test.log(args...) } logf := func(msg, ...args) { test.log(format(msg, args...)) } done := func() { test.done() } isTrue := func(condition, ...msg) { if !condition { test.fail(" != 'true': ", msg...) } } isTruef := func(condition, msg, ...args) { isTrue(condition, format(msg, args...)) } isFalse := func(condition, ...args) { if condition { test.fail(" != 'false'", args...) } } isFalsef := func(condition, msg, ...args) { isFalse(condition, format(msg, args...)) } isEqual := func(expect, value, ...args) { if expect == value { return } msg := format("%q != %q (expect: %#v, got %#v)", expect, value, expect, value) fail(msg, args...) } isEqualf := func(expect, value, msg, ...args) { isEqual(expect, value, format(msg, args...)) } export { done : done, skip : skip, skipf : skipf, fail : fail, failf : failf, log : log, logf : logf, isTrue : isTrue, isTruef : isTruef, isFalse : isFalse, isFalsef : isFalsef, isEqual : isEqual, isEqualf : isEqualf }