@@ -20,69 +20,89 @@ import (
2020)
2121
2222func 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