diff options
| -rw-r--r-- | testing/mod.ts | 7 | ||||
| -rw-r--r-- | testing/test.ts | 7 |
2 files changed, 14 insertions, 0 deletions
diff --git a/testing/mod.ts b/testing/mod.ts index 762d37c48..06089a80a 100644 --- a/testing/mod.ts +++ b/testing/mod.ts @@ -74,6 +74,13 @@ const assertions = { } }, + /** + * Forcefully throws a failed assertion + */ + fail(msg?: string): void { + assert(false, `Failed assertion${msg ? `: ${msg}` : "."}`); + }, + /** Executes a function, expecting it to throw. If it does not, then it * throws. An error class and a string that should be included in the * error message can also be asserted. diff --git a/testing/test.ts b/testing/test.ts index 1765fd6b6..347a31b56 100644 --- a/testing/test.ts +++ b/testing/test.ts @@ -31,6 +31,13 @@ test(function testingAssertEqual() { assert(assertEqual === assert.equal); }); +test(function testingAssertFail() { + let didThrow = false; + + assert.throws(assert.fail, Error, "Failed assertion."); + assert.throws(() => { assert.fail("foo"); }, Error, "Failed assertion: foo"); +}); + test(function testingAssertEqualActualUncoercable() { let didThrow = false; const a = Object.create(null); |
