That was a good idea.
......................................self: #PID<0.1343.0>
bypass: #PID<0.1344.0>
async req pid: #PID<0.1360.0>
finch: #PID<0.1357.0>
*DBG* <0.1344.0> got {'DOWN',#Ref<0.1067949558.531890179.24259>,process,
<0.1363.0>,shutdown}
*DBG* <0.1344.0> new state #{callers_awaiting_down => [],
callers_awaiting_exit => [],
expectations =>
#{{any,any} =>
#{expected => once_or_more,
'fun' =>
#Fun<Elixir.FinchTest.1.116636333>,
path_parts => [],request_count => 1,
results =>
[{exit,{exit,shutdown,[]}}],
retained_plugs => #{}}},
monitors => #{},pass => false,port => 43377,
ref => #Ref<0.1067949558.531890179.24222>,
socket => #Port<0.203>,
unknown_route_error => nil}
*DBG* <0.1344.0> got call on_exit from <0.1364.0>
*DBG* <0.1344.0> sent {exit,{exit,shutdown,[]}} to <0.1364.0>, new state #{callers_awaiting_down =>
[],
callers_awaiting_exit =>
[],
expectations =>
#{{any,
any} =>
#{expected =>
once_or_more,
'fun' =>
#Fun<Elixir.FinchTest.1.116636333>,
path_parts =>
[],
request_count =>
1,
results =>
[{exit,
{exit,
shutdown,
[]}}],
retained_plugs =>
#{}}},
monitors =>
#{},
pass =>
false,
port =>
43377,
ref =>
#Ref<0.1067949558.531890179.24222>,
socket =>
nil,
unknown_route_error =>
nil}
1) test async_request/3 with HTTP/1 can be canceled with cancel_async_request/2 (FinchTest)
test/finch_test.exs:771
** (exit) shutdown
................................
Finished in 7.3 seconds (5.0s async, 2.2s sync)
71 tests, 1 failure
Randomized with seed 853761
So it looks like Bypass is sending an exit shutdown message to what I presume to be the test server. I’m not entirely sure why or what I can do to prevent it.
Edit: Looking at the code, it’s Bypass that’s exiting here.
Edit 2: And, indeed, if I modify Bypass to not exit at that line, the test works.


















