title | category |
---|---|
ExUnit |
Elixir |
defmodule MyTest do
use ExUnit.Case
use ExUnit.Case, async: true # for async
test "the truth" do
assert 1 + 1 == 2
end
end
import ExUnit.CaptureIO
test "capture io" do
result = capture_io(fn ->
IO.puts "sup"
end)
assert result == "sup\n"
end
config :ex_unit, capture_logs: true
defmodule AssertionTest do
# run concurrently with other test cases
use ExUnit.Case, async: true
end
assert x == y
refute x == y
assert_raise ArithmeticError, fn ->
1 + "test"
end
assert_raise ArithmeticError, "message", fn -> ...
assert_raise ArithmeticError, ~r/message/, fn -> ...
flunk "This should've been an error"
## Also see
- <http://devdocs.io/elixir/ex_unit/exunit#configure/1>