|
|
@@ -264,6 +264,49 @@ func TestMetrics(t *testing.T) {
|
|
|
ts.Close()
|
|
|
})
|
|
|
})
|
|
|
+
|
|
|
+ Convey("Test update total stats", t, func() {
|
|
|
+ uss := &UsageStatsService{
|
|
|
+ Bus: bus.New(),
|
|
|
+ Cfg: setting.NewCfg(),
|
|
|
+ }
|
|
|
+ uss.Cfg.MetricsEndpointEnabled = true
|
|
|
+ uss.Cfg.MetricsEndpointDisableTotalStats = false
|
|
|
+ getSystemStatsWasCalled := false
|
|
|
+ uss.Bus.AddHandler(func(query *models.GetSystemStatsQuery) error {
|
|
|
+ query.Result = &models.SystemStats{}
|
|
|
+ getSystemStatsWasCalled = true
|
|
|
+ return nil
|
|
|
+ })
|
|
|
+
|
|
|
+ Convey("should not update stats when metrics is disabled and total stats is disabled", func() {
|
|
|
+ uss.Cfg.MetricsEndpointEnabled = false
|
|
|
+ uss.Cfg.MetricsEndpointDisableTotalStats = true
|
|
|
+ uss.updateTotalStats()
|
|
|
+ So(getSystemStatsWasCalled, ShouldBeFalse)
|
|
|
+ })
|
|
|
+
|
|
|
+ Convey("should not update stats when metrics is disabled and total stats enabled", func() {
|
|
|
+ uss.Cfg.MetricsEndpointEnabled = false
|
|
|
+ uss.Cfg.MetricsEndpointDisableTotalStats = false
|
|
|
+ uss.updateTotalStats()
|
|
|
+ So(getSystemStatsWasCalled, ShouldBeFalse)
|
|
|
+ })
|
|
|
+
|
|
|
+ Convey("should not update stats when metrics is enabled and total stats disabled", func() {
|
|
|
+ uss.Cfg.MetricsEndpointEnabled = true
|
|
|
+ uss.Cfg.MetricsEndpointDisableTotalStats = true
|
|
|
+ uss.updateTotalStats()
|
|
|
+ So(getSystemStatsWasCalled, ShouldBeFalse)
|
|
|
+ })
|
|
|
+
|
|
|
+ Convey("should update stats when metrics is enabled and total stats enabled", func() {
|
|
|
+ uss.Cfg.MetricsEndpointEnabled = true
|
|
|
+ uss.Cfg.MetricsEndpointDisableTotalStats = false
|
|
|
+ uss.updateTotalStats()
|
|
|
+ So(getSystemStatsWasCalled, ShouldBeTrue)
|
|
|
+ })
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
func waitTimeout(wg *sync.WaitGroup, timeout time.Duration) bool {
|