Skip to content

Commit 8839073

Browse files
committed
Tests
1 parent 65dae64 commit 8839073

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

fleetshard/pkg/fleetshardmetrics/server_test.go

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,33 @@ func TestMetricsServerServesCustomMetrics(t *testing.T) {
3333
"total_central_reconcilations",
3434
"total_central_reconcilation_errors",
3535
"active_central_reconcilations",
36-
"total_centrals",
3736
}
3837

3938
for _, key := range expectedKeys {
4039
assert.Containsf(t, metrics, metricsPrefix+key, "expected metrics to contain %s but it did not: %v", key, metrics)
4140
}
4241
}
4342

43+
func TestMetricsServerServesTotalCentralsMetric(t *testing.T) {
44+
server := NewMetricsServer(":8081")
45+
46+
MetricsInstance().SetTotalCentrals(1, "ready")
47+
48+
rec := httptest.NewRecorder()
49+
req, err := http.NewRequest(http.MethodGet, "/metrics", nil)
50+
require.NoError(t, err, "failed creating metrics requests")
51+
52+
server.Handler.ServeHTTP(rec, req)
53+
require.Equal(t, http.StatusOK, rec.Code, "status code should be OK")
54+
55+
promParser := expfmt.TextParser{}
56+
metrics, err := promParser.TextToMetricFamilies(rec.Body)
57+
require.NoError(t, err, "failed parsing metrics file")
58+
59+
key := metricsPrefix + "total_centrals"
60+
assert.Containsf(t, metrics, key, "expected metrics to contain %s but it did not: %v", key, metrics)
61+
}
62+
4463
func serveMetrics(t *testing.T, customMetrics *Metrics) metricResponse {
4564
rec := httptest.NewRecorder()
4665
req, err := http.NewRequest(http.MethodGet, "/metrics", nil)

0 commit comments

Comments
 (0)