Skip to content
This repository was archived by the owner on Jul 31, 2023. It is now read-only.

Commit d835ff8

Browse files
authored
fix config_test to run in any order. (#1194)
- fixes #1193
1 parent d851005 commit d835ff8

File tree

1 file changed

+61
-41
lines changed

1 file changed

+61
-41
lines changed

trace/config_test.go

Lines changed: 61 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -20,69 +20,89 @@ import (
2020
)
2121

2222
func TestApplyConfig(t *testing.T) {
23-
testCfgs := []Config{
24-
{},
23+
cfg := config.Load().(*Config)
24+
defaultCfg := Config{
25+
DefaultSampler: cfg.DefaultSampler,
26+
IDGenerator: cfg.IDGenerator,
27+
MaxAttributesPerSpan: DefaultMaxAttributesPerSpan,
28+
MaxAnnotationEventsPerSpan: DefaultMaxAnnotationEventsPerSpan,
29+
MaxMessageEventsPerSpan: DefaultMaxMessageEventsPerSpan,
30+
MaxLinksPerSpan: DefaultMaxLinksPerSpan,
31+
}
32+
testCases := []struct {
33+
name string
34+
newCfg Config
35+
wantCfg Config
36+
}{
2537
{
26-
MaxAttributesPerSpan: 1,
27-
MaxAnnotationEventsPerSpan: 2,
28-
MaxMessageEventsPerSpan: 3,
29-
MaxLinksPerSpan: 4,
38+
name: "Initialize to default config",
39+
newCfg: defaultCfg,
40+
wantCfg: defaultCfg,
3041
},
3142
{
32-
MaxAttributesPerSpan: -1,
33-
MaxAnnotationEventsPerSpan: 3,
34-
MaxMessageEventsPerSpan: -3,
35-
MaxLinksPerSpan: 5,
36-
}}
37-
cfg := config.Load().(*Config)
38-
wantCfgs := []Config{
39-
{
40-
DefaultSampler: cfg.DefaultSampler,
41-
IDGenerator: cfg.IDGenerator,
42-
MaxAttributesPerSpan: DefaultMaxAttributesPerSpan,
43-
MaxAnnotationEventsPerSpan: DefaultMaxAnnotationEventsPerSpan,
44-
MaxMessageEventsPerSpan: DefaultMaxMessageEventsPerSpan,
45-
MaxLinksPerSpan: DefaultMaxLinksPerSpan,
43+
name: "Empty Config",
44+
newCfg: Config{},
45+
wantCfg: defaultCfg,
4646
},
4747
{
48-
DefaultSampler: cfg.DefaultSampler,
49-
IDGenerator: cfg.IDGenerator,
50-
MaxAttributesPerSpan: 1,
51-
MaxAnnotationEventsPerSpan: 2,
52-
MaxMessageEventsPerSpan: 3,
53-
MaxLinksPerSpan: 4,
48+
name: "Valid non-default config",
49+
newCfg: Config{
50+
MaxAttributesPerSpan: 1,
51+
MaxAnnotationEventsPerSpan: 2,
52+
MaxMessageEventsPerSpan: 3,
53+
MaxLinksPerSpan: 4,
54+
},
55+
wantCfg: Config{
56+
DefaultSampler: cfg.DefaultSampler,
57+
IDGenerator: cfg.IDGenerator,
58+
MaxAttributesPerSpan: 1,
59+
MaxAnnotationEventsPerSpan: 2,
60+
MaxMessageEventsPerSpan: 3,
61+
MaxLinksPerSpan: 4,
62+
},
5463
},
5564
{
56-
DefaultSampler: cfg.DefaultSampler,
57-
IDGenerator: cfg.IDGenerator,
58-
MaxAttributesPerSpan: 1,
59-
MaxAnnotationEventsPerSpan: 3,
60-
MaxMessageEventsPerSpan: 3,
61-
MaxLinksPerSpan: 5,
62-
}}
65+
name: "Partially invalid config",
66+
newCfg: Config{
67+
MaxAttributesPerSpan: -1,
68+
MaxAnnotationEventsPerSpan: 3,
69+
MaxMessageEventsPerSpan: -3,
70+
MaxLinksPerSpan: 5,
71+
},
72+
wantCfg: Config{
73+
DefaultSampler: cfg.DefaultSampler,
74+
IDGenerator: cfg.IDGenerator,
75+
MaxAttributesPerSpan: 1,
76+
MaxAnnotationEventsPerSpan: 3,
77+
MaxMessageEventsPerSpan: 3,
78+
MaxLinksPerSpan: 5,
79+
},
80+
},
81+
}
6382

64-
for i, newCfg := range testCfgs {
83+
for i, tt := range testCases {
84+
newCfg := tt.newCfg
6585
ApplyConfig(newCfg)
6686
gotCfg := config.Load().(*Config)
67-
wantCfg := wantCfgs[i]
87+
wantCfg := tt.wantCfg
6888

6989
if got, want := reflect.ValueOf(gotCfg.DefaultSampler).Pointer(), reflect.ValueOf(wantCfg.DefaultSampler).Pointer(); got != want {
70-
t.Fatalf("testId = %d config.DefaultSampler = %#v; want %#v", i, got, want)
90+
t.Fatalf("testId = %d, testName = %s: config.DefaultSampler = %#v; want %#v", i, tt.name, got, want)
7191
}
7292
if got, want := gotCfg.IDGenerator, wantCfg.IDGenerator; got != want {
73-
t.Fatalf("testId = %d config.IDGenerator = %#v; want %#v", i, got, want)
93+
t.Fatalf("testId = %d, testName = %s: config.IDGenerator = %#v; want %#v", i, tt.name, got, want)
7494
}
7595
if got, want := gotCfg.MaxAttributesPerSpan, wantCfg.MaxAttributesPerSpan; got != want {
76-
t.Fatalf("testId = %d config.MaxAttributesPerSpan = %#v; want %#v", i, got, want)
96+
t.Fatalf("testId = %d, testName = %s: config.MaxAttributesPerSpan = %#v; want %#v", i, tt.name, got, want)
7797
}
7898
if got, want := gotCfg.MaxLinksPerSpan, wantCfg.MaxLinksPerSpan; got != want {
79-
t.Fatalf("testId = %d config.MaxLinksPerSpan = %#v; want %#v", i, got, want)
99+
t.Fatalf("testId = %d, testName = %s: config.MaxLinksPerSpan = %#v; want %#v", i, tt.name, got, want)
80100
}
81101
if got, want := gotCfg.MaxAnnotationEventsPerSpan, wantCfg.MaxAnnotationEventsPerSpan; got != want {
82-
t.Fatalf("testId = %d config.MaxAnnotationEventsPerSpan = %#v; want %#v", i, got, want)
102+
t.Fatalf("testId = %d, testName = %s: config.MaxAnnotationEventsPerSpan = %#v; want %#v", i, tt.name, got, want)
83103
}
84104
if got, want := gotCfg.MaxMessageEventsPerSpan, wantCfg.MaxMessageEventsPerSpan; got != want {
85-
t.Fatalf("testId = %d config.MaxMessageEventsPerSpan = %#v; want %#v", i, got, want)
105+
t.Fatalf("testId = %d, testName = %s: config.MaxMessageEventsPerSpan = %#v; want %#v", i, tt.name, got, want)
86106
}
87107

88108
}

0 commit comments

Comments
 (0)