11defmodule Sentry.Opentelemetry.SamplerTest do
2- use Sentry.Case , async: true
2+ use Sentry.Case , async: false
33
44 alias Sentry.OpenTelemetry.Sampler
55 alias Sentry.ClientReport
66
7+ import Sentry.TestHelpers
8+
79 defp create_test_span_context ( span_id \\ 123_456_789 ) do
810 {
911 :span_ctx ,
@@ -18,16 +20,6 @@ defmodule Sentry.Opentelemetry.SamplerTest do
1820 }
1921 end
2022
21- setup do
22- original_rate = Sentry.Config . traces_sample_rate ( )
23-
24- on_exit ( fn ->
25- Sentry.Config . put_config ( :traces_sample_rate , original_rate )
26- end )
27-
28- :ok
29- end
30-
3123 describe "span name dropping" do
3224 test "drops spans with the given name and records discarded event" do
3325 :sys . replace_state ( ClientReport.Sender , fn _ -> % { } end )
@@ -44,7 +36,7 @@ defmodule Sentry.Opentelemetry.SamplerTest do
4436 end
4537
4638 test "records and samples spans not in drop list" do
47- Sentry.Config . put_config ( : traces_sample_rate, 1.0 )
39+ put_test_config ( traces_sample_rate: 1.0 )
4840
4941 test_ctx = create_test_span_context ( )
5042
@@ -63,7 +55,7 @@ defmodule Sentry.Opentelemetry.SamplerTest do
6355 test "always drops when sample rate is 0.0 and records discarded event" do
6456 :sys . replace_state ( ClientReport.Sender , fn _ -> % { } end )
6557
66- Sentry.Config . put_config ( : traces_sample_rate, 0.0 )
58+ put_test_config ( traces_sample_rate: 0.0 )
6759
6860 test_ctx = create_test_span_context ( )
6961
@@ -78,7 +70,7 @@ defmodule Sentry.Opentelemetry.SamplerTest do
7870 end
7971
8072 test "always samples when sample rate is 1.0" do
81- Sentry.Config . put_config ( : traces_sample_rate, 1.0 )
73+ put_test_config ( traces_sample_rate: 1.0 )
8274
8375 test_ctx = create_test_span_context ( )
8476
@@ -90,7 +82,7 @@ defmodule Sentry.Opentelemetry.SamplerTest do
9082 end
9183
9284 test "different trace_ids produce different sampling decisions" do
93- Sentry.Config . put_config ( : traces_sample_rate, 0.5 )
85+ put_test_config ( traces_sample_rate: 0.5 )
9486
9587 trace_ids = Enum . to_list ( 1 .. 100 )
9688
@@ -112,7 +104,7 @@ defmodule Sentry.Opentelemetry.SamplerTest do
112104 test "records discarded events when randomly dropped by sample rate" do
113105 :sys . replace_state ( ClientReport.Sender , fn _ -> % { } end )
114106
115- Sentry.Config . put_config ( : traces_sample_rate, 0.001 )
107+ put_test_config ( traces_sample_rate: 0.001 )
116108
117109 Enum . each ( 1 .. 50 , fn trace_id ->
118110 test_ctx = create_test_span_context ( )
@@ -127,7 +119,7 @@ defmodule Sentry.Opentelemetry.SamplerTest do
127119 test "always drops when sample rate is nil (tracing disabled) and records discarded event" do
128120 :sys . replace_state ( ClientReport.Sender , fn _ -> % { } end )
129121
130- Sentry.Config . put_config ( : traces_sample_rate, nil )
122+ put_test_config ( traces_sample_rate: nil )
131123
132124 test_ctx = create_test_span_context ( )
133125
@@ -217,7 +209,7 @@ defmodule Sentry.Opentelemetry.SamplerTest do
217209 end
218210
219211 test "makes new sampling decision when no existing trace context" do
220- Sentry.Config . put_config ( : traces_sample_rate, 1.0 )
212+ put_test_config ( traces_sample_rate: 1.0 )
221213
222214 test_ctx = create_test_span_context ( )
223215
@@ -239,7 +231,7 @@ defmodule Sentry.Opentelemetry.SamplerTest do
239231 token = :otel_ctx . attach ( ctx_with_span )
240232
241233 try do
242- Sentry.Config . put_config ( : traces_sample_rate, 1.0 )
234+ put_test_config ( traces_sample_rate: 1.0 )
243235
244236 result =
245237 Sampler . should_sample ( ctx_with_span , trace_id , nil , "span in external trace" , nil , nil ,
@@ -285,7 +277,7 @@ defmodule Sentry.Opentelemetry.SamplerTest do
285277
286278 describe "tracestate management" do
287279 test "builds tracestate with correct format" do
288- Sentry.Config . put_config ( : traces_sample_rate, 0.75 )
280+ put_test_config ( traces_sample_rate: 0.75 )
289281
290282 test_ctx = create_test_span_context ( )
291283
0 commit comments