"testing"
)
-var mCVect CounterVec
-var mGVect GaugeVec
-
-var mCGroupVect map[string]CounterVec
-var mGGroupVect map[string]GaugeVec
-
-func TestMetricSetup(t *testing.T) {
- mCVect = Metric.RegisterCounterVec(CounterOpts{Name: "counter1", Help: "counter1"}, []string{"name", "event"}, "SUBSYSTEM0")
-
- mCGroupVect = Metric.RegisterCounterVecGroup(
- []CounterOpts{
- {Name: "counter1", Help: "counter1"},
- },
- []string{"name", "event"},
- "SUBSYSTEM1")
-
- mGVect = Metric.RegisterGaugeVec(CounterOpts{Name: "gauge1", Help: "gauge1"}, []string{"name", "event"}, "SUBSYSTEM0")
-
- mGGroupVect = Metric.RegisterGaugeVecGroup(
- []CounterOpts{
- {Name: "gauge1", Help: "gauge1"},
- },
- []string{"name", "event"},
- "SUBSYSTEM1")
-
- tmpCVect := Metric.RegisterCounterVec(CounterOpts{Name: "counter1", Help: "counter1"}, []string{"name", "event"}, "SUBSYSTEM0")
-
- if tmpCVect.Vec != mCVect.Vec {
- t.Errorf("tmpCVect not same than mCVect. cache not working?")
- }
-
- tmpGVect := Metric.RegisterGaugeVec(CounterOpts{Name: "gauge1", Help: "gauge1"}, []string{"name", "event"}, "SUBSYSTEM0")
-
- if tmpGVect.Vec != mGVect.Vec {
- t.Errorf("tmpGVect not same than mGVect. cache not working?")
- }
-
- Metric.RegisterCounterVec(CounterOpts{Name: "counter1", Help: "counter1"}, []string{"name", "eventMismatch"}, "SUBSYSTEM0")
- Metric.RegisterGaugeVec(CounterOpts{Name: "gauge1", Help: "gauge1"}, []string{"name", "eventMismatch"}, "SUBSYSTEM0")
-
-}
-
func TestMetricCounter(t *testing.T) {
TestCounterOpt := CounterOpts{Name: "CounterBlaah1", Help: "CounterBlaah1"}
ret1 := Metric.RegisterCounter(TestCounterOpt, "TestMetricCounter")
}
}
+func TestMetricLabeledCounter(t *testing.T) {
+ //
+ //
+ c_1_1 := Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEML0")
+
+ c_1_2 := Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEML0")
+
+ c_1_1.Inc()
+ c_1_2.Inc()
+ if c_1_1 != c_1_2 {
+ t.Errorf("c_1_1 not same than c_1_2. cache not working?")
+ }
+
+ //
+ //
+ c_2_1 := Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ []string{"name", "event"},
+ []string{"name1", "event2"},
+ "SUBSYSTEML0")
+
+ c_2_2 := Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ []string{"name", "event"},
+ []string{"name1", "event2"},
+ "SUBSYSTEML0")
+
+ c_2_1.Inc()
+ c_2_2.Inc()
+ if c_2_1 != c_2_2 {
+ t.Errorf("c_2_1 not same than c_2_2. cache not working?")
+ }
+
+ if c_1_1 == c_2_1 {
+ t.Errorf("c_1_1 same than c_2_1. what?")
+ }
+ if c_1_2 == c_2_2 {
+ t.Errorf("c_1_2 same than c_2_2. what?")
+ }
+
+}
+
+func TestMetricLabeledCounterMissmatch(t *testing.T) {
+ Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRMISSMATCH")
+
+ ret := Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ []string{"name", "eventmiss"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRMISSMATCH")
+
+ if ret != nil {
+ t.Errorf("Returned counter even its labels are mismatching")
+ }
+
+ ret = Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ []string{"name"},
+ []string{"name1"},
+ "SUBSYSTEMLERRMISSMATCH")
+
+ if ret != nil {
+ t.Errorf("Returned counter even its labels are mismatching")
+ }
+
+}
+
+func TestMetricLabeledCounterWrongOrder(t *testing.T) {
+ Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRWRONGORDER")
+
+ ret := Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ []string{"event", "name"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRWRONGORDER")
+
+ if ret != nil {
+ t.Errorf("Returned counter even its labels order is wrong")
+ }
+}
+
+func TestMetricLabeledCounterCounterNameExists(t *testing.T) {
+ Metric.RegisterCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ "SUBSYSTEMLERRNAMEEXISTS")
+
+ ret := Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter1", Help: "counter1"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRNAMEEXISTS")
+
+ if ret != nil {
+ t.Errorf("Returned labeled counter even its name conflicts with existing counter name")
+ }
+}
+
+func TestMetricCounterLabeledCounterNameExists(t *testing.T) {
+ Metric.RegisterLabeledCounter(
+ CounterOpts{Name: "counter2", Help: "counter2"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRNAMEEXISTS")
+
+ ret := Metric.RegisterCounter(
+ CounterOpts{Name: "counter2", Help: "counter2"},
+ "SUBSYSTEMLERRNAMEEXISTS")
+
+ if ret != nil {
+ t.Errorf("Returned counter even its name conflicts with existing labeled counter name")
+ }
+}
+
+func TestMetricLabeledCounterGroup(t *testing.T) {
+ //
+ //
+ c_grp1 := Metric.RegisterLabeledCounterGroup(
+ []CounterOpts{{Name: "counter1", Help: "counter1"}},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEML1")
+
+ if _, ok := c_grp1["counter1"]; ok == false {
+ t.Errorf("c_grp1 counter1 not exists")
+ }
+ c_grp1["counter1"].Inc()
+
+ //
+ //
+ c_grp2 := Metric.RegisterLabeledCounterGroup(
+ []CounterOpts{{Name: "counter1", Help: "counter1"}},
+ []string{"name", "event"},
+ []string{"name1", "event2"},
+ "SUBSYSTEML1")
+
+ if _, ok := c_grp2["counter1"]; ok == false {
+ t.Errorf("c_grp2 counter1 not exists")
+ }
+ c_grp2["counter1"].Inc()
+}
+
func TestMetricGauge(t *testing.T) {
TestGaugeOpts := CounterOpts{Name: "GaugeBlaah1", Help: "GaugeBlaah1"}
ret1 := Metric.RegisterGauge(TestGaugeOpts, "TestMetricGauge")
}
}
-func TestMetricCounterVector(t *testing.T) {
+func TestMetricLabeledGauge(t *testing.T) {
//
//
- c_1_1 := Metric.GetCounterFromVect([]string{"name1", "event1"}, mCVect)
+ c_1_1 := Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEML0")
+
+ c_1_2 := Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEML0")
+
c_1_1.Inc()
- c_1_2 := Metric.GetCounterFromVect([]string{"name1", "event1"}, mCVect)
c_1_2.Inc()
if c_1_1 != c_1_2 {
t.Errorf("c_1_1 not same than c_1_2. cache not working?")
}
+
//
//
- c_2_1 := Metric.GetCounterFromVect([]string{"name1", "event2"}, mCVect)
+ c_2_1 := Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ []string{"name", "event"},
+ []string{"name1", "event2"},
+ "SUBSYSTEML0")
+
+ c_2_2 := Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ []string{"name", "event"},
+ []string{"name1", "event2"},
+ "SUBSYSTEML0")
+
c_2_1.Inc()
- c_2_2 := Metric.GetCounterFromVect([]string{"name1", "event2"}, mCVect)
c_2_2.Inc()
if c_2_1 != c_2_2 {
t.Errorf("c_2_1 not same than c_2_2. cache not working?")
}
+
if c_1_1 == c_2_1 {
t.Errorf("c_1_1 same than c_2_1. what?")
}
+ if c_1_2 == c_2_2 {
+ t.Errorf("c_1_2 same than c_2_2. what?")
+ }
}
-func TestMetricCounterGroupVector(t *testing.T) {
- //
- //
- c_grp1 := Metric.GetCounterGroupFromVects([]string{"name1", "event1"}, mCGroupVect)
- if _, ok := c_grp1["counter1"]; ok == false {
- t.Errorf("c_grp1 counter1 not exists")
- }
- c_grp1["counter1"].Inc()
+func TestMetricLabeledGaugeMissmatch(t *testing.T) {
+ Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRMISSMATCH")
- //
- //
- c_grp2 := Metric.GetCounterGroupFromVects([]string{"name1", "event2"}, mCGroupVect)
- if _, ok := c_grp2["counter1"]; ok == false {
- t.Errorf("c_grp2 counter1 not exists")
- }
- c_grp2["counter1"].Inc()
-}
+ ret := Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ []string{"name", "eventmiss"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRMISSMATCH")
-func TestMetricGaugeVector(t *testing.T) {
- //
- //
- c_1_1 := Metric.GetGaugeFromVect([]string{"name1", "event1"}, mGVect)
- c_1_1.Inc()
- c_1_2 := Metric.GetGaugeFromVect([]string{"name1", "event1"}, mGVect)
- c_1_2.Inc()
- if c_1_1 != c_1_2 {
- t.Errorf("c_1_1 not same than c_1_2. cache not working?")
- }
- //
- //
- c_2_1 := Metric.GetGaugeFromVect([]string{"name1", "event2"}, mGVect)
- c_2_1.Inc()
- c_2_2 := Metric.GetGaugeFromVect([]string{"name1", "event2"}, mGVect)
- c_2_2.Inc()
- if c_2_1 != c_2_2 {
- t.Errorf("c_2_1 not same than c_2_2. cache not working?")
+ if ret != nil {
+ t.Errorf("Returned gauge even its labels are mismatching")
}
- if c_1_1 == c_2_1 {
- t.Errorf("c_1_1 same than c_2_1. what?")
+
+ ret = Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ []string{"name"},
+ []string{"name1"},
+ "SUBSYSTEMLERRMISSMATCH")
+
+ if ret != nil {
+ t.Errorf("Returned gauge even its labels are mismatching")
}
+
}
-func TestMetricGaugeGroupVector(t *testing.T) {
- //
- //
- g_grp1 := Metric.GetGaugeGroupFromVects([]string{"name1", "event1"}, mGGroupVect)
- if _, ok := g_grp1["gauge1"]; ok == false {
- t.Errorf("g_grp1 gauge1 not exists")
- }
- g_grp1["gauge1"].Inc()
+func TestMetricLabeledGaugeWrongOrder(t *testing.T) {
+ Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRWRONGORDER")
- //
- //
- g_grp2 := Metric.GetGaugeGroupFromVects([]string{"name1", "event2"}, mGGroupVect)
- if _, ok := g_grp2["gauge1"]; ok == false {
- t.Errorf("g_grp2 gauge1 not exists")
+ ret := Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ []string{"event", "name"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRWRONGORDER")
+
+ if ret != nil {
+ t.Errorf("Returned gauge even its labels order is wrong")
}
- g_grp2["gauge1"].Inc()
+
}
-func TestMetricCounterGroupVectorPrefix(t *testing.T) {
- //
- //
- c_grp1 := Metric.GetCounterGroupFromVectsWithPrefix("event1_", []string{"name1", "event1"}, mCGroupVect)
- if _, ok := c_grp1["event1_counter1"]; ok == false {
- t.Errorf("c_grp1 event1_counter1 not exists")
- }
- c_grp1["event1_counter1"].Inc()
+func TestMetricLabeledGaugeGaugeNameExists(t *testing.T) {
+ Metric.RegisterGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ "SUBSYSTEMLERRNAMEEXISTS")
- //
- //
- c_grp2 := Metric.GetCounterGroupFromVectsWithPrefix("event2_", []string{"name1", "event2"}, mCGroupVect)
- if _, ok := c_grp2["event2_counter1"]; ok == false {
- t.Errorf("c_grp2 event2_counter1 not exists")
+ ret := Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge1", Help: "gauge1"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRNAMEEXISTS")
+
+ if ret != nil {
+ t.Errorf("Returned labeled gauge even its name conflicts with existing gauge name")
}
- c_grp2["event2_counter1"].Inc()
+}
- //
- //
- m_grp := NewMetricGroupsCache()
- m_grp.CombineCounterGroups(c_grp1, c_grp2)
+func TestMetricGaugeLabeledGaugeNameExists(t *testing.T) {
+ Metric.RegisterLabeledGauge(
+ CounterOpts{Name: "gauge2", Help: "gauge2"},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEMLERRNAMEEXISTS")
- //
- //
- if m_grp.CIs("event1_counter1") == false {
- t.Errorf("m_grp event1_counter1 not exists")
- }
- m_grp.CInc("event1_counter1")
+ ret := Metric.RegisterGauge(
+ CounterOpts{Name: "gauge2", Help: "gauge2"},
+ "SUBSYSTEMLERRNAMEEXISTS")
- //
- //
- if m_grp.CIs("event2_counter1") == false {
- t.Errorf("m_grp event2_counter1 not exists")
+ if ret != nil {
+ t.Errorf("Returned gauge even its name conflicts with existing labeled gauge name")
}
-
- m_grp.CAdd("event2_counter1", 1)
- m_grp.CGet("event2_counter1")
}
-func TestMetricGaugeGroupVectorPrefix(t *testing.T) {
+func TestMetricLabeledGaugeGroup(t *testing.T) {
//
//
- g_grp1 := Metric.GetGaugeGroupFromVectsWithPrefix("event1_", []string{"name1", "event1"}, mGGroupVect)
- if _, ok := g_grp1["event1_gauge1"]; ok == false {
- t.Errorf("g_grp1 event1_gauge1 not exists")
- }
- g_grp1["event1_gauge1"].Inc()
+ g_grp1 := Metric.RegisterLabeledGaugeGroup(
+ []CounterOpts{{Name: "gauge1", Help: "gauge1"}},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEML1")
- //
- //
- g_grp2 := Metric.GetGaugeGroupFromVectsWithPrefix("event2_", []string{"name1", "event2"}, mGGroupVect)
- if _, ok := g_grp2["event2_gauge1"]; ok == false {
- t.Errorf("g_grp2 event2_gauge1 not exists")
+ if _, ok := g_grp1["gauge1"]; ok == false {
+ t.Errorf("g_grp1 gauge1 not exists")
}
- g_grp2["event2_gauge1"].Inc()
-
- m_grp := NewMetricGroupsCache()
- m_grp.CombineGaugeGroups(g_grp1, g_grp2)
+ g_grp1["gauge1"].Inc()
//
//
- if m_grp.GIs("event1_gauge1") == false {
- t.Errorf("m_grp event1_gauge1 not exists")
- }
- m_grp.GInc("event1_gauge1")
+ g_grp2 := Metric.RegisterLabeledGaugeGroup(
+ []CounterOpts{{Name: "gauge1", Help: "gauge1"}},
+ []string{"name", "event"},
+ []string{"name1", "event2"},
+ "SUBSYSTEML1")
- //
- //
- if m_grp.GIs("event2_gauge1") == false {
- t.Errorf("m_grp event2_gauge1 not exists")
+ if _, ok := g_grp2["gauge1"]; ok == false {
+ t.Errorf("g_grp2 gauge1 not exists")
}
- m_grp.GInc("event2_gauge1")
-
- m_grp.GGet("event2_gauge1")
- m_grp.GDec("event2_gauge1")
- m_grp.GSet("event2_gauge1", 1)
+ g_grp2["gauge1"].Inc()
}
func TestMetricGroupCache(t *testing.T) {
//
//
- c_grp1 := Metric.GetCounterGroupFromVectsWithPrefix("event1_", []string{"name1", "event1"}, mCGroupVect)
- if _, ok := c_grp1["event1_counter1"]; ok == false {
- t.Errorf("c_grp1 event1_counter1 not exists")
+ c_grp1 := Metric.RegisterLabeledCounterGroup(
+ []CounterOpts{{Name: "counter1", Help: "counter1"}},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEML1")
+ if _, ok := c_grp1["counter1"]; ok == false {
+ t.Errorf("c_grp1 counter1 not exists")
}
- c_grp1["event1_counter1"].Inc()
+ c_grp1["counter1"].Inc()
//
//
- c_grp2 := Metric.GetCounterGroupFromVects([]string{"name1", "event2"}, mCGroupVect)
+ c_grp2 := Metric.RegisterLabeledCounterGroup(
+ []CounterOpts{{Name: "counter1", Help: "counter1"}},
+ []string{"name", "event"},
+ []string{"name1", "event2"},
+ "SUBSYSTEML1")
if _, ok := c_grp2["counter1"]; ok == false {
t.Errorf("c_grp2 counter1 not exists")
}
//
//
- g_grp1 := Metric.GetGaugeGroupFromVectsWithPrefix("event1_", []string{"name1", "event1"}, mGGroupVect)
- if _, ok := g_grp1["event1_gauge1"]; ok == false {
- t.Errorf("g_grp1 event1_gauge1 not exists")
+ g_grp1 := Metric.RegisterLabeledGaugeGroup(
+ []CounterOpts{{Name: "gauge1", Help: "gauge1"}},
+ []string{"name", "event"},
+ []string{"name1", "event1"},
+ "SUBSYSTEML1")
+ if _, ok := g_grp1["gauge1"]; ok == false {
+ t.Errorf("g_grp1 gauge1 not exists")
}
- g_grp1["event1_gauge1"].Inc()
+ g_grp1["gauge1"].Inc()
//
//
- g_grp2 := Metric.GetGaugeGroupFromVects([]string{"name1", "event2"}, mGGroupVect)
+ g_grp2 := Metric.RegisterLabeledGaugeGroup(
+ []CounterOpts{{Name: "gauge1", Help: "gauge1"}},
+ []string{"name", "event"},
+ []string{"name1", "event2"},
+ "SUBSYSTEML1")
if _, ok := g_grp2["gauge1"]; ok == false {
t.Errorf("g_grp2 gauge1 not exists")
}
//
//
m_grp := NewMetricGroupsCache()
- m_grp.CombineCounterGroups(c_grp1)
+ m_grp.CombineCounterGroupsWithPrefix("event1_", c_grp1)
m_grp.CombineCounterGroupsWithPrefix("event2_", c_grp2)
- m_grp.CombineGaugeGroups(g_grp1)
+ m_grp.CombineGaugeGroupsWithPrefix("event1_", g_grp1)
m_grp.CombineGaugeGroupsWithPrefix("event2_", g_grp2)
if m_grp == nil {
m_grp.GDec("event2_gauge1")
m_grp.GSet("event2_gauge1", 1)
}
+
+type registerer struct{}
+
+func (met *registerer) RegisterCounter(opts CounterOpts) Counter {
+ return Metric.RegisterLabeledCounter(
+ opts,
+ []string{"host", "interface"},
+ []string{"testhost", "testinterface"},
+ "SUBSYSTEMAUTO")
+}
+
+func (met *registerer) RegisterGauge(opts CounterOpts) Gauge {
+ return Metric.RegisterLabeledGauge(
+ opts,
+ []string{"host", "interface"},
+ []string{"testhost", "testinterface"},
+ "SUBSYSTEMAUTO")
+}
+
+func TestMetricCounterAutoCGetNoReg(t *testing.T) {
+ m_grp := NewMetricGroupsCache()
+ m_grp.CGet("cautotest1")
+}
+
+func TestMetricCounterAutoCGetFunc(t *testing.T) {
+ m_grp := NewMetricGroupsCache()
+ m_reg := ®isterer{}
+ m_grp.Registerer(MetricGroupsCacheCounterRegistererFunc(m_reg.RegisterCounter), nil)
+ m_grp.CGet("cautotest1")
+}
+
+func TestMetricCounterAutoCGet(t *testing.T) {
+ m_grp := NewMetricGroupsCacheWithRegisterers(®isterer{}, nil)
+ m_grp.CGet("cautotest1")
+}
+
+func TestMetricCounterAutoCInc(t *testing.T) {
+ m_grp := NewMetricGroupsCache()
+ m_grp.Registerer(®isterer{}, nil)
+ m_grp.CInc("cautotest1")
+}
+
+func TestMetricCounterAutoCAdd(t *testing.T) {
+ m_grp := NewMetricGroupsCache()
+ m_grp.Registerer(®isterer{}, nil)
+ m_grp.CAdd("cautotest1", float64(10))
+}
+
+func TestMetricCounterAutoGGetNoReg(t *testing.T) {
+ m_grp := NewMetricGroupsCache()
+ m_grp.GGet("gautotest1")
+}
+
+func TestMetricCounterAutoGGetFunc(t *testing.T) {
+ m_grp := NewMetricGroupsCache()
+ m_reg := ®isterer{}
+ m_grp.Registerer(nil, MetricGroupsCacheGaugeRegistererFunc(m_reg.RegisterGauge))
+ m_grp.GGet("gautotest1")
+}
+
+func TestMetricCounterAutoGGet(t *testing.T) {
+ m_grp := NewMetricGroupsCacheWithRegisterers(nil, ®isterer{})
+ m_grp.GGet("gautotest1")
+}
+
+func TestMetricCounterAutoGInc(t *testing.T) {
+ m_grp := NewMetricGroupsCache()
+ m_grp.Registerer(nil, ®isterer{})
+ m_grp.GInc("gautotest1")
+}
+
+func TestMetricCounterAutoGSet(t *testing.T) {
+ m_grp := NewMetricGroupsCache()
+ m_grp.Registerer(nil, ®isterer{})
+ m_grp.GSet("gautotest1", float64(10))
+}
+
+func TestMetricCounterAutoGAdd(t *testing.T) {
+ m_grp := NewMetricGroupsCache()
+ m_grp.Registerer(nil, ®isterer{})
+ m_grp.GAdd("gautotest1", float64(10))
+}
+
+func TestMetricCounterAutoGDec(t *testing.T) {
+ m_grp := NewMetricGroupsCache()
+ m_grp.Registerer(nil, ®isterer{})
+ m_grp.GDec("gautotest1")
+}