Skip to content

Commit 5426df7

Browse files
committed
tests(daemon): Tests invalid data passed to SetLogForwardingLabels
1 parent c0a7666 commit 5426df7

File tree

1 file changed

+73
-0
lines changed

1 file changed

+73
-0
lines changed

daemon/internal/newrelic/log_events_test.go

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,3 +83,76 @@ func TestSetLogForwardingLabels(t *testing.T) {
8383
t.Errorf("expected JSON %s, got %s", expected, string(json))
8484
}
8585
}
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

Comments
 (0)