Skip to content

Commit c6d3e48

Browse files
committed
Fix regression on direct raise of ExUnit.AssertionError
1 parent 7afabc9 commit c6d3e48

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

lib/ex_unit/lib/ex_unit/assertions.ex

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,10 @@ defmodule ExUnit.AssertionError do
3939
end
4040

4141
@impl true
42+
def exception(message) when is_binary(message) do
43+
%ExUnit.AssertionError{message: message}
44+
end
45+
4246
def exception(opts) do
4347
with {:ok, message} when not is_binary(message) <- Keyword.fetch(opts, :message) do
4448
raise ArgumentError,

lib/ex_unit/test/ex_unit/assertions_test.exs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,15 @@ defmodule ExUnit.AssertionsTest do
6363

6464
defguardp is_zero(zero) when zero == 0
6565

66+
test "direct raise" do
67+
try do
68+
raise ExUnit.AssertionError, "This is a test"
69+
rescue
70+
error in [ExUnit.AssertionError] ->
71+
"This is a test" = error.message
72+
end
73+
end
74+
6675
test "assert inside macro" do
6776
assert_ok(42)
6877
end

0 commit comments

Comments
 (0)