Skip to content

Commit 40dbbe0

Browse files
committed
tracer: add test for new getStrategy method, add test for getter and setter concurrency
1 parent 720a9e5 commit 40dbbe0

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

tracer/tracer_test.go

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,3 +121,36 @@ func TestUpdatePrometheusCounters(t *testing.T) {
121121
tracer.updatePrometheusCounters(MCP.String())
122122
assert.Equal(t, 8, counter)
123123
}
124+
125+
func TestGetStrategy(t *testing.T) {
126+
mockStrategy := func(event Event) {}
127+
128+
tracer := GetInstance(mockStrategy)
129+
130+
retrievedStrategy := tracer.GetStrategy()
131+
assert.NotNil(t, retrievedStrategy)
132+
}
133+
134+
func TestSetGetStrategyConcurrency(t *testing.T) {
135+
tracer := GetInstance(func(event Event) {})
136+
137+
var wg sync.WaitGroup
138+
139+
for i := 0; i < 10; i++ {
140+
wg.Add(2)
141+
142+
go func(id int) {
143+
defer wg.Done()
144+
mockStrategy := func(event Event) {}
145+
tracer.SetStrategy(mockStrategy)
146+
}(i)
147+
148+
go func(id int) {
149+
defer wg.Done()
150+
strategy := tracer.GetStrategy()
151+
assert.NotNil(t, strategy)
152+
}(i)
153+
}
154+
155+
wg.Wait()
156+
}

0 commit comments

Comments
 (0)