github.com/mackerelio/mackerel-agent-plugins@v0.89.3/mackerel-plugin-rabbitmq/lib/rabbitmq_test.go (about) 1 package mprabbitmq 2 3 import ( 4 "reflect" 5 "testing" 6 7 "github.com/michaelklishin/rabbit-hole" 8 "github.com/stretchr/testify/assert" 9 ) 10 11 func TestGraphDefinition(t *testing.T) { 12 var rabbitmq RabbitMQPlugin 13 14 graphdef := rabbitmq.GraphDefinition() 15 if len(graphdef) != 2 { 16 t.Errorf("GetTempfilename: %d should be 2", len(graphdef)) 17 } 18 } 19 20 func TestParse(t *testing.T) { 21 var rabbitmq RabbitMQPlugin 22 23 var stub rabbithole.Overview 24 stub.QueueTotals.Messages = 1 25 stub.QueueTotals.MessagesReady = 2 26 stub.QueueTotals.MessagesUnacknowledged = 3 27 stub.MessageStats.PublishDetails.Rate = 4 28 29 stat, err := rabbitmq.parseStats(stub) 30 31 assert.Nil(t, err) 32 assert.EqualValues(t, reflect.TypeOf(stat["messages"]).String(), "float64") 33 assert.EqualValues(t, stat["messages"], 1) 34 assert.EqualValues(t, reflect.TypeOf(stat["publish"]).String(), "float64") 35 assert.EqualValues(t, stat["publish"], 4) 36 }