[day-05] test imc controller
This commit is contained in:
parent
36ed37bcd0
commit
b1e4310672
39
test/wabanex_web/controllers/imc_controller_test.exs
Normal file
39
test/wabanex_web/controllers/imc_controller_test.exs
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
defmodule WabanexWeb.IMCControllerTest do
|
||||||
|
use WabanexWeb.ConnCase, async: true
|
||||||
|
|
||||||
|
describe "index/2" do
|
||||||
|
test "when all params are valid returns the imc info", %{conn: conn} do
|
||||||
|
params = %{"filename" => "students.csv"}
|
||||||
|
|
||||||
|
response =
|
||||||
|
conn
|
||||||
|
|> get(Routes.imc_path(conn, :index, params))
|
||||||
|
|> json_response(:ok)
|
||||||
|
|
||||||
|
expected_response = %{
|
||||||
|
"result" => %{
|
||||||
|
"Americo" => 24.508945765204302,
|
||||||
|
"Ana" => 21.30394857667585,
|
||||||
|
"Claudio" => 30.42184964845863,
|
||||||
|
"João" => 31.88775510204082,
|
||||||
|
"Luiz" => 27.777777777777775
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
assert expected_response == response
|
||||||
|
end
|
||||||
|
|
||||||
|
test "when params are invalid returns an error", %{conn: conn} do
|
||||||
|
params = %{"filename" => "unavailable.csv"}
|
||||||
|
|
||||||
|
response =
|
||||||
|
conn
|
||||||
|
|> get(Routes.imc_path(conn, :index, params))
|
||||||
|
|> json_response(:bad_request)
|
||||||
|
|
||||||
|
expected_response = %{"result" => "Error while opening the file"}
|
||||||
|
|
||||||
|
assert expected_response == response
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
x
Reference in New Issue
Block a user