@@ -4,7 +4,7 @@ defmodule Sentry.TransportTest do
4
4
import Sentry.TestHelpers
5
5
import ExUnit.CaptureLog
6
6
7
- alias Sentry . { ClientError , Envelope , Event , HackneyClient , Transport }
7
+ alias Sentry . { ClientError , Envelope , Event , FinchClient , Transport }
8
8
9
9
describe "encode_and_post_envelope/2" do
10
10
setup do
@@ -16,14 +16,13 @@ defmodule Sentry.TransportTest do
16
16
test "sends a POST request with the right headers and payload" , % { bypass: bypass } do
17
17
envelope = Envelope . from_event ( Event . create_event ( message: "Hello 1" ) )
18
18
19
- Bypass . expect_once ( bypass , fn conn ->
19
+ Bypass . expect ( bypass , fn conn ->
20
20
assert { :ok , body , conn } = Plug.Conn . read_body ( conn )
21
21
22
22
assert conn . method == "POST"
23
23
assert conn . request_path == "/api/1/envelope/"
24
24
25
25
assert [ "sentry-elixir/" <> _ ] = Plug.Conn . get_req_header ( conn , "user-agent" )
26
- assert [ "application/octet-stream" ] = Plug.Conn . get_req_header ( conn , "content-type" )
27
26
assert [ sentry_auth_header ] = Plug.Conn . get_req_header ( conn , "x-sentry-auth" )
28
27
29
28
assert sentry_auth_header =~
@@ -34,7 +33,7 @@ defmodule Sentry.TransportTest do
34
33
Plug.Conn . resp ( conn , 200 , ~s< {"id":"123"}> )
35
34
end )
36
35
37
- assert { :ok , "123" } = Transport . encode_and_post_envelope ( envelope , HackneyClient )
36
+ assert { :ok , "123" } = Transport . encode_and_post_envelope ( envelope , FinchClient )
38
37
end
39
38
40
39
test "returns an error if the HTTP client returns a badly-typed response" do
@@ -70,10 +69,12 @@ defmodule Sentry.TransportTest do
70
69
71
70
Bypass . down ( bypass )
72
71
73
- assert { :request_failure , :econnrefused } =
74
- error ( fn ->
75
- Transport . encode_and_post_envelope ( envelope , HackneyClient , _retries = [ ] )
76
- end )
72
+ assert { :error ,
73
+ % Sentry.ClientError {
74
+ reason: { :request_failure , % Mint.TransportError { reason: :econnrefused } } ,
75
+ http_response: nil
76
+ } } =
77
+ Transport . encode_and_post_envelope ( envelope , FinchClient , _retries = [ ] )
77
78
end
78
79
79
80
test "returns an error if the response from Sentry is not 200" , % { bypass: bypass } do
@@ -86,7 +87,7 @@ defmodule Sentry.TransportTest do
86
87
end )
87
88
88
89
{ :error , % ClientError { } = error } =
89
- Transport . encode_and_post_envelope ( envelope , HackneyClient , _retries = [ ] )
90
+ Transport . encode_and_post_envelope ( envelope , FinchClient , _retries = [ ] )
90
91
91
92
assert error . reason == :server_error
92
93
assert { 400 , headers , "{}" } = error . http_response
@@ -172,7 +173,7 @@ defmodule Sentry.TransportTest do
172
173
173
174
assert { :error , % RuntimeError { message: "I'm a really bad JSON library" } , _stacktrace } =
174
175
error ( fn ->
175
- Transport . encode_and_post_envelope ( envelope , HackneyClient , _retries = [ ] )
176
+ Transport . encode_and_post_envelope ( envelope , FinchClient , _retries = [ ] )
176
177
end )
177
178
after
178
179
:code . delete ( CrashingJSONLibrary )
@@ -192,7 +193,7 @@ defmodule Sentry.TransportTest do
192
193
193
194
assert { :request_failure , error } =
194
195
error ( fn ->
195
- Transport . encode_and_post_envelope ( envelope , HackneyClient , _retries = [ 0 ] )
196
+ Transport . encode_and_post_envelope ( envelope , FinchClient , _retries = [ 0 ] )
196
197
end )
197
198
198
199
if Version . match? ( System . version ( ) , "~> 1.18" ) do
@@ -225,7 +226,7 @@ defmodule Sentry.TransportTest do
225
226
end )
226
227
227
228
assert { :ok , "123" } =
228
- Transport . encode_and_post_envelope ( envelope , HackneyClient , _retries = [ 10 , 25 ] )
229
+ Transport . encode_and_post_envelope ( envelope , FinchClient , _retries = [ 10 , 25 ] )
229
230
230
231
assert System . system_time ( :millisecond ) - start_time >= 35
231
232
@@ -249,12 +250,12 @@ defmodule Sentry.TransportTest do
249
250
250
251
assert :too_many_retries =
251
252
error ( fn ->
252
- Transport . encode_and_post_envelope ( envelope , HackneyClient , _retries = [ ] )
253
+ Transport . encode_and_post_envelope ( envelope , FinchClient , _retries = [ ] )
253
254
end )
254
255
255
256
log =
256
257
capture_log ( fn ->
257
- Transport . encode_and_post_envelope ( envelope , HackneyClient , _retries = [ ] )
258
+ Transport . encode_and_post_envelope ( envelope , FinchClient , _retries = [ ] )
258
259
end )
259
260
260
261
assert log =~ "[warning]"
0 commit comments