You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
828 B
Go
34 lines
828 B
Go
package jitsiexporter
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/prometheus/client_golang/prometheus"
|
|
"github.com/prometheus/client_golang/prometheus/testutil"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestUpdate(t *testing.T) {
|
|
assert := assert.New(t)
|
|
|
|
s := make(map[string]interface{})
|
|
s["foo"] = "foo"
|
|
s["bar"] = 1
|
|
s["zonk"] = float64(1)
|
|
mockStater := &MockStater{}
|
|
mockStater.On("Now", "http://foo.tld").Return(s)
|
|
|
|
m := &Metrics{
|
|
URL: "http://foo.tld",
|
|
Metrics: make(map[string]Metric),
|
|
Stater: mockStater,
|
|
}
|
|
|
|
m.Update()
|
|
|
|
assert.Equal(testutil.ToFloat64(m.Metrics["jitsi_zonk"].Gauge), float64(1))
|
|
assert.Equal(m.Metrics["jitsi_foo"], Metric{Name: "", Gauge: prometheus.Gauge(nil)})
|
|
assert.Equal(m.Metrics["jitsi_bar"], Metric{Name: "", Gauge: prometheus.Gauge(nil)})
|
|
assert.Equal(len(m.Metrics), 1)
|
|
}
|