1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
package collector
import (
"testing"
"gopkg.in/mgo.v2/bson"
)
func Test_ParserServerStatus(t *testing.T) {
data := LoadFixture("server_status.bson")
serverStatus := &ServerStatus{}
loadServerStatusFromBson(data, serverStatus)
if serverStatus.Asserts == nil {
t.Error("Asserts group was not loaded")
}
if serverStatus.Dur == nil {
t.Error("Dur group was not loaded")
}
if serverStatus.BackgroundFlushing == nil {
t.Error("BackgroundFlushing group was not loaded")
}
if serverStatus.Connections == nil {
t.Error("Connections group was not loaded")
}
if serverStatus.ExtraInfo == nil {
t.Error("ExtraInfo group was not loaded")
}
if serverStatus.GlobalLock == nil {
t.Error("GlobalLock group was not loaded")
}
if serverStatus.Network == nil {
t.Error("Network group was not loaded")
}
if serverStatus.Opcounters == nil {
t.Error("Opcounters group was not loaded")
}
if serverStatus.OpcountersRepl == nil {
t.Error("OpcountersRepl group was not loaded")
}
if serverStatus.Mem == nil {
t.Error("Mem group was not loaded")
}
if serverStatus.Connections == nil {
t.Error("Connections group was not loaded")
}
if serverStatus.Locks == nil {
t.Error("Locks group was not loaded")
}
if serverStatus.Metrics.Document.Deleted != 45726 {
t.Error("Metrics group was not loaded correctly")
}
}
func loadServerStatusFromBson(data []byte, status *ServerStatus) {
err := bson.Unmarshal(data, status)
if err != nil {
panic(err)
}
}
|