Assert An Exception Is Raised
ExUnit comes with a number of
different ways to make assertions in your tests. One of those functions is
which allows you to test that a particular exception is raised when the
given function is invoked.
assert_raise/2 looks something like this:
assert_raise FunctionClauseError, fn -> Enum.chunk([1,2,3], 0) end
assert_raise/3 form is also available which allows you to test both
the type of exception and the resulting message.
assert_raise FunctionClauseError, ~r/^no function clause matching/, fn -> Enum.chunk([1,2,3], 0) end
Using the regex sigil for the second argument is generally a good way to go to keep tests from getting too brittle.Tweet