Packages
bandit
1.1.0
1.12.0
1.11.1
1.11.0
1.10.4
1.10.3
1.10.2
1.10.1
1.10.0
retired
1.9.0
1.8.0
1.7.0
1.6.11
1.6.10
1.6.9
1.6.8
1.6.7
1.6.6
1.6.5
1.6.4
1.6.3
1.6.2
1.6.1
1.6.0
1.5.7
1.5.6
1.5.5
1.5.4
1.5.3
1.5.2
1.5.1
1.5.0
1.4.2
1.4.1
1.4.0
1.3.0
1.2.3
1.2.2
1.2.1
1.2.0
1.1.3
1.1.2
1.1.1
1.1.0
1.0.0
1.0.0-pre.18
1.0.0-pre.17
1.0.0-pre.16
1.0.0-pre.15
1.0.0-pre.14
1.0.0-pre.13
1.0.0-pre.12
1.0.0-pre.11
1.0.0-pre.10
1.0.0-pre.9
1.0.0-pre.8
1.0.0-pre.7
1.0.0-pre.6
1.0.0-pre.5
1.0.0-pre.4
1.0.0-pre.3
1.0.0-pre.2
1.0.0-pre.1
0.7.7
0.7.6
0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.11
0.6.10
0.6.9
0.6.8
0.6.7
0.6.6
0.6.5
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
0.5.11
0.5.10
0.5.9
0.5.8
0.5.7
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.10
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.2.3
0.2.2
0.2.1
0.2.0
0.1.1
0.1.0
A pure-Elixir HTTP server built for Plug & WebSock apps
Security advisory:
This version has known vulnerabilities.
View advisories
Current section
Files
Jump to
Current section
Files
test/bandit/server_test.exs
defmodule ServerTest do
# False due to capture log emptiness check
use ExUnit.Case, async: false
use ServerHelpers
import ExUnit.CaptureLog
test "server logs connection details at startup" do
logs =
capture_log(fn ->
start_supervised({Bandit, plug: __MODULE__, port: 0, ip: :loopback})
end)
assert logs =~
"Running ServerTest with Bandit #{Application.spec(:bandit)[:vsn]} at 127.0.0.1"
end
test "startup_log: false arg disables connection detail log at startup" do
logs =
capture_log(fn ->
start_supervised({Bandit, plug: __MODULE__, port: 0, ip: :loopback, startup_log: false})
end)
assert logs == ""
end
test "server logs connection error detail log at startup" do
pid = start_supervised!({Bandit, scheme: :http, plug: __MODULE__})
{:ok, {address, port}} = ThousandIsland.listener_info(pid)
logs =
capture_log(fn ->
assert {:error, _} = start_supervised({Bandit, plug: __MODULE__, port: port, ip: address})
end)
assert logs =~
"Running ServerTest with Bandit #{Application.spec(:bandit)[:vsn]} at http failed, port already in use"
end
test "can run multiple instances of Bandit" do
start_supervised({Bandit, plug: __MODULE__, port: 4000})
start_supervised({Bandit, plug: __MODULE__, port: 4001})
assert 200 == Req.get!("http://localhost:4000/hello").status
assert 200 == Req.get!("http://localhost:4001/hello").status
end
def hello(conn) do
conn |> send_resp(200, "OK")
end
end