Add open_weather_map input plugin (#5125)

This commit is contained in:
Sebastien Leger
2019-05-31 00:17:04 +02:00
committed by Daniel Nelson
parent 59d646a8e8
commit 484122b7d4
5 changed files with 883 additions and 4 deletions

View File

@@ -320,6 +320,26 @@ func (a *Accumulator) WaitError(n int) {
a.Unlock()
}
func (a *Accumulator) assertContainsTaggedFields(
t *testing.T,
measurement string,
fields map[string]interface{},
tags map[string]string,
) {
for _, p := range a.Metrics {
if !reflect.DeepEqual(tags, p.Tags) {
continue
}
if p.Measurement == measurement {
assert.Equal(t, fields, p.Fields)
return
}
}
msg := fmt.Sprintf("unknown measurement %s with tags %v", measurement, tags)
assert.Fail(t, msg)
}
func (a *Accumulator) AssertContainsTaggedFields(
t *testing.T,
measurement string,
@@ -333,13 +353,11 @@ func (a *Accumulator) AssertContainsTaggedFields(
continue
}
if p.Measurement == measurement {
assert.Equal(t, fields, p.Fields)
if p.Measurement == measurement && reflect.DeepEqual(fields, p.Fields) {
return
}
}
msg := fmt.Sprintf("unknown measurement %s with tags %v", measurement, tags)
assert.Fail(t, msg)
a.assertContainsTaggedFields(t, measurement, fields, tags)
}
func (a *Accumulator) AssertDoesNotContainsTaggedFields(