From f24ddc425b446df0b302828b046ae8b275f11ae6 Mon Sep 17 00:00:00 2001 From: aaa5kameric Date: Mon, 14 Oct 2024 11:53:40 +0200 Subject: [PATCH] metric deletion test update --- internal/certmonitor/certmonitor_test.go | 41 +++++++++++++++++++++--- 1 file changed, 36 insertions(+), 5 deletions(-) diff --git a/internal/certmonitor/certmonitor_test.go b/internal/certmonitor/certmonitor_test.go index ac64daf10..6ec5a8603 100644 --- a/internal/certmonitor/certmonitor_test.go +++ b/internal/certmonitor/certmonitor_test.go @@ -291,7 +291,7 @@ func TestCertMonitor_secretMatches(t *testing.T) { } // TestCertMonitor func tests certificates event handlers + prometheus metrics handling -func TestCertMonitor(t *testing.T) { +func TestCertMonitor_Secret(t *testing.T) { fleetshardmetrics.MetricsInstance().CertificatesExpiry.Reset() namespaces := []v1.Namespace{ @@ -333,10 +333,6 @@ func TestCertMonitor(t *testing.T) { Data: map[string][]byte{"tls-1.crt": generateCertWithExpiration(t, newExpiryTime)}, } - mockNamespace := &v1.Namespace{ // pragma: allowlist secret - ObjectMeta: metav1.ObjectMeta{Namespace: "namespace-1"}, - } - expirationUnix := float64(expirytime.Unix()) certMonitor.handleSecretCreation(secret) verifyPrometheusMetric(t, "namespace-1", "secret-1", "tls.crt", expirationUnix) @@ -347,6 +343,41 @@ func TestCertMonitor(t *testing.T) { certMonitor.handleSecretDeletion(secretUpdated) verifyPrometheusMetricDelete(t, "namespace-1", "secret-1", "tls.crt") +} + +// TestCertMonitor func tests certificates event handlers + prometheus metrics handling +func TestCertMonitor_Namespace(t *testing.T) { + fleetshardmetrics.MetricsInstance().CertificatesExpiry.Reset() + + namespaces := []v1.Namespace{ + { + ObjectMeta: metav1.ObjectMeta{ + Name: "namespace-1", + Labels: map[string]string{ + "foo": "bar"}, + }, + }, + } + certMonitor := &certMonitor{ + namespaceGetter: newFakeNamespaceGetter(namespaces), + metrics: fleetshardmetrics.MetricsInstance(), + config: &Config{ + Monitors: []MonitorConfig{ + { + Namespace: SelectorConfig{ + Name: "namespace-1", + }, + Secret: SelectorConfig{ // pragma: allowlist secret + Name: "secret-1", + }, + }, + }, + }, + } + + mockNamespace := &v1.Namespace{ // pragma: allowlist secret + ObjectMeta: metav1.ObjectMeta{Namespace: "namespace-1"}, + } certMonitor.handleNamespaceDeletion(mockNamespace) verifyPrometheusMetricDelete(t, "namespace-1", "secret-1", "tls.crt")