How to run ExUnit tests within IEx
I am assuming you are not using mix
. You need to load the test cases to the ExUnit
server before running them.
Before Elixir v1.6 you would load the tests like this:
ExUnit.Server.cases_loaded()
And after Elixir v1.6 you would load them like this (thanks to @jeffreymatthias):
ExUnit.Server.modules_loaded()
So the code you should write in iex
should be:
ExUnit.start()
defmodule Calc do
def add(a,b) do
a + b
end
end
defmodule TheTest do
use ExUnit.Case
test "adds two numbers" do
require IEx
IEx.pry()
assert Calc.add(1, 2) == 3
end
end
ExUnit.Server.modules_loaded() # Or ExUnit.Server.cases_loaded()
ExUnit.run()
I hope this helps.