Skip to content

Commit 86c2de0

Browse files
committed
add bandit to integration tests
Supersedes #5707.
1 parent faf58d0 commit 86c2de0

File tree

6 files changed

+333
-164
lines changed

6 files changed

+333
-164
lines changed

mix.exs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ defmodule Phoenix.MixProject do
9191

9292
# Optional deps
9393
{:plug_cowboy, "~> 2.7", optional: true},
94+
{:bandit, "~> 1.0", optional: true},
9495
{:jason, "~> 1.0", optional: true},
9596

9697
# Docs dependencies (some for cross references)

mix.lock

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
%{
2+
"bandit": {:hex, :bandit, "1.6.7", "42f30e37a1c89a2a12943c5dca76f731a2313e8a2e21c1a95dc8241893e922d1", [:mix], [{:hpax, "~> 1.0", [hex: :hpax, repo: "hexpm", optional: false]}, {:plug, "~> 1.14", [hex: :plug, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}, {:thousand_island, "~> 1.0", [hex: :thousand_island, repo: "hexpm", optional: false]}, {:websock, "~> 0.5", [hex: :websock, repo: "hexpm", optional: false]}], "hexpm", "551ba8ff5e4fc908cbeb8c9f0697775fb6813a96d9de5f7fe02e34e76fd7d184"},
23
"castore": {:hex, :castore, "1.0.11", "4bbd584741601eb658007339ea730b082cc61f3554cf2e8f39bf693a11b49073", [:mix], [], "hexpm", "e03990b4db988df56262852f20de0f659871c35154691427a5047f4967a16a62"},
34
"cowboy": {:hex, :cowboy, "2.12.0", "f276d521a1ff88b2b9b4c54d0e753da6c66dd7be6c9fca3d9418b561828a3731", [:make, :rebar3], [{:cowlib, "2.13.0", [hex: :cowlib, repo: "hexpm", optional: false]}, {:ranch, "1.8.0", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "8a7abe6d183372ceb21caa2709bec928ab2b72e18a3911aa1771639bef82651e"},
45
"cowboy_telemetry": {:hex, :cowboy_telemetry, "0.4.0", "f239f68b588efa7707abce16a84d0d2acf3a0f50571f8bb7f56a15865aae820c", [:rebar3], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:telemetry, "~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "7d98bac1ee4565d31b62d59f8823dfd8356a169e7fcbb83831b8a5397404c9de"},
@@ -35,6 +36,7 @@
3536
"telemetry": {:hex, :telemetry, "1.3.0", "fedebbae410d715cf8e7062c96a1ef32ec22e764197f70cda73d82778d61e7a2", [:rebar3], [], "hexpm", "7015fc8919dbe63764f4b4b87a95b7c0996bd539e0d499be6ec9d7f3875b79e6"},
3637
"telemetry_metrics": {:hex, :telemetry_metrics, "1.1.0", "5bd5f3b5637e0abea0426b947e3ce5dd304f8b3bc6617039e2b5a008adc02f8f", [:mix], [{:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "e7b79e8ddfde70adb6db8a6623d1778ec66401f366e9a8f5dd0955c56bc8ce67"},
3738
"telemetry_poller": {:hex, :telemetry_poller, "1.1.0", "58fa7c216257291caaf8d05678c8d01bd45f4bdbc1286838a28c4bb62ef32999", [:rebar3], [{:telemetry, "~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "9eb9d9cbfd81cbd7cdd24682f8711b6e2b691289a0de6826e58452f28c103c8f"},
39+
"thousand_island": {:hex, :thousand_island, "1.3.9", "095db3e2650819443e33237891271943fad3b7f9ba341073947581362582ab5a", [:mix], [{:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "25ab4c07badadf7f87adb4ab414e0ed374e5f19e72503aa85132caa25776e54f"},
3840
"websock": {:hex, :websock, "0.5.3", "2f69a6ebe810328555b6fe5c831a851f485e303a7c8ce6c5f675abeb20ebdadc", [:mix], [], "hexpm", "6105453d7fac22c712ad66fab1d45abdf049868f253cf719b625151460b8b453"},
3941
"websock_adapter": {:hex, :websock_adapter, "0.5.8", "3b97dc94e407e2d1fc666b2fb9acf6be81a1798a2602294aac000260a7c4a47d", [:mix], [{:bandit, ">= 0.6.0", [hex: :bandit, repo: "hexpm", optional: true]}, {:plug, "~> 1.14", [hex: :plug, repo: "hexpm", optional: false]}, {:plug_cowboy, "~> 2.6", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:websock, "~> 0.5", [hex: :websock, repo: "hexpm", optional: false]}], "hexpm", "315b9a1865552212b5f35140ad194e67ce31af45bcee443d4ecb96b5fd3f3782"},
4042
}

test/phoenix/integration/long_poll_channels_test.exs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
Code.require_file("../../support/http_client.exs", __DIR__)
22

33
defmodule Phoenix.Integration.LongPollChannelsTest do
4-
use ExUnit.Case
4+
use ExUnit.Case,
5+
parameterize: [%{adapter: Bandit.PhoenixAdapter}, %{adapter: Phoenix.Endpoint.Cowboy2Adapter}]
6+
57
import ExUnit.CaptureLog
68

79
alias Phoenix.Integration.HTTPClient
@@ -17,6 +19,7 @@ defmodule Phoenix.Integration.LongPollChannelsTest do
1719
http: [port: @port],
1820
secret_key_base: String.duplicate("abcdefgh", 8),
1921
server: true,
22+
drainer: false,
2023
pubsub_server: __MODULE__
2124
)
2225

@@ -138,7 +141,9 @@ defmodule Phoenix.Integration.LongPollChannelsTest do
138141
]
139142
end
140143

141-
setup_all do
144+
setup_all %{adapter: adapter} do
145+
config = Application.get_env(:phoenix, Endpoint)
146+
Application.put_env(:phoenix, Endpoint, Keyword.merge(config, adapter: adapter))
142147
capture_log(fn -> start_supervised!(Endpoint) end)
143148
start_supervised!({Phoenix.PubSub, name: __MODULE__, pool_size: @pool_size})
144149
:ok

test/phoenix/integration/long_poll_socket_test.exs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
Code.require_file("../../support/http_client.exs", __DIR__)
22

33
defmodule Phoenix.Integration.LongPollSocketTest do
4-
use ExUnit.Case
4+
use ExUnit.Case,
5+
parameterize: [%{adapter: Bandit.PhoenixAdapter}, %{adapter: Phoenix.Endpoint.Cowboy2Adapter}]
6+
57
import ExUnit.CaptureLog
68

79
alias Phoenix.Integration.HTTPClient
@@ -19,6 +21,7 @@ defmodule Phoenix.Integration.LongPollSocketTest do
1921
debug_errors: false,
2022
secret_key_base: String.duplicate("abcdefgh", 8),
2123
server: true,
24+
drainer: false,
2225
pubsub_server: __MODULE__
2326
)
2427

@@ -71,9 +74,11 @@ defmodule Phoenix.Integration.LongPollSocketTest do
7174
custom: :value
7275
end
7376

74-
setup_all do
75-
capture_log(fn -> start_supervised! Endpoint end)
76-
start_supervised! {Phoenix.PubSub, name: __MODULE__, pool_size: @pool_size}
77+
setup_all %{adapter: adapter} do
78+
config = Application.get_env(:phoenix, Endpoint)
79+
Application.put_env(:phoenix, Endpoint, Keyword.merge(config, adapter: adapter))
80+
capture_log(fn -> start_supervised!(Endpoint) end)
81+
start_supervised!({Phoenix.PubSub, name: __MODULE__, pool_size: @pool_size})
7782
:ok
7883
end
7984

0 commit comments

Comments
 (0)