View source code
Display the source code in std/exception.d from which this
page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a
Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
Function std.exception.assertThrown
Asserts that the given expression throws the given type of Throwable
.
The Throwable
is caught and does not escape assertThrown. However,
any other Throwable
s will escape, and if no Throwable
of the given type is thrown, then an AssertError
is thrown.
void assertThrown(T, E)
(
lazy E expression,
string msg = null,
string file = __FILE__,
size_t line = __LINE__
);
Parameters
Name | Description |
---|---|
T | The Throwable to test for. |
expression | The expression to test. |
msg | Optional message to output on test failure. |
file | The file where the error occurred.
Defaults to __FILE__ . |
line | The line where the error occurred.
Defaults to __LINE__ . |
Throws
AssertError
if the given Throwable
is not thrown.
Example
import core .exception : AssertError;
import std .string;
assertThrown!StringException(enforce!StringException(false, "Error!"));
//Exception is the default.
assertThrown(enforce!StringException(false, "Error!"));
assert(collectExceptionMsg!AssertError(assertThrown!StringException(
enforce!StringException(true, "Error!"))) ==
`assertThrown failed: No StringException was thrown.`);
Authors
License
Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.