@@ -83,3 +83,76 @@ func TestSetLogForwardingLabels(t *testing.T) {
83
83
t .Errorf ("expected JSON %s, got %s" , expected , string (json ))
84
84
}
85
85
}
86
+
87
+ func TestSetLogForwardingLabelsInvalidData (t * testing.T ) {
88
+ events := NewLogEvents (10 )
89
+ id := AgentRunID (`12345` )
90
+ log_data := []byte (`{"message":"test log event"}` )
91
+ label_data := []byte (`NOT VALID JSON` )
92
+ priority := SamplingPriority (0.5 )
93
+
94
+ events .AddEventFromData (log_data , priority )
95
+ events .SetLogForwardingLabels (label_data )
96
+
97
+ if events .analyticsEvents .events .Len () != 1 {
98
+ t .Errorf ("expected 1 event, got %d" , events .analyticsEvents .events .Len ())
99
+ }
100
+
101
+ es := * events .analyticsEvents .events
102
+ event := es [0 ]
103
+
104
+ if string (event .data ) != string (log_data ) {
105
+ t .Errorf ("expected event data %s, got %s" , string (log_data ), string (event .data ))
106
+ }
107
+
108
+ if event .priority != priority {
109
+ t .Errorf ("expected event priority %f, got %f" , priority , event .priority )
110
+ }
111
+
112
+ json , err := events .CollectorJSON (id )
113
+ if nil != err {
114
+ t .Fatal (err )
115
+ }
116
+
117
+ expected := `[{"common": {"attributes": {}},` +
118
+ `"logs": [{"message":"test log event"}]}]`
119
+ if string (json ) != expected {
120
+ t .Errorf ("expected JSON %s, got %s" , expected , string (json ))
121
+ }
122
+ }
123
+
124
+ func TestSetLogForwardingLabelsNilData (t * testing.T ) {
125
+ events := NewLogEvents (10 )
126
+ id := AgentRunID (`12345` )
127
+ log_data := []byte (`{"message":"test log event"}` )
128
+ priority := SamplingPriority (0.5 )
129
+
130
+ events .AddEventFromData (log_data , priority )
131
+ events .SetLogForwardingLabels (nil )
132
+
133
+ if events .analyticsEvents .events .Len () != 1 {
134
+ t .Errorf ("expected 1 event, got %d" , events .analyticsEvents .events .Len ())
135
+ }
136
+
137
+ es := * events .analyticsEvents .events
138
+ event := es [0 ]
139
+
140
+ if string (event .data ) != string (log_data ) {
141
+ t .Errorf ("expected event data %s, got %s" , string (log_data ), string (event .data ))
142
+ }
143
+
144
+ if event .priority != priority {
145
+ t .Errorf ("expected event priority %f, got %f" , priority , event .priority )
146
+ }
147
+
148
+ json , err := events .CollectorJSON (id )
149
+ if nil != err {
150
+ t .Fatal (err )
151
+ }
152
+
153
+ expected := `[{"common": {"attributes": {}},` +
154
+ `"logs": [{"message":"test log event"}]}]`
155
+ if string (json ) != expected {
156
+ t .Errorf ("expected JSON %s, got %s" , expected , string (json ))
157
+ }
158
+ }
0 commit comments