From f4a3bffc6b487cf2bc88861f4efc5b028303cd18 Mon Sep 17 00:00:00 2001 From: Naeel Date: Sun, 26 Apr 2026 11:45:13 +0300 Subject: [PATCH] layer1: test namespace manager summary logging --- .../2026-04-26-namespace-manager-step46.md | 14 +++++++++++++ pkg/utils/namespace_manager_test.go | 20 +++++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/doc/thinking/2026-04-26-namespace-manager-step46.md b/doc/thinking/2026-04-26-namespace-manager-step46.md index 62f95b90..d57faf64 100644 --- a/doc/thinking/2026-04-26-namespace-manager-step46.md +++ b/doc/thinking/2026-04-26-namespace-manager-step46.md @@ -2,6 +2,20 @@ ## Цель шага +Закрыть маленький пробел в debug surface: `LogNamespaceManagerSummary()` уже используется, но отдельно не тестируется. + +## Что меняем + +1. Добавляем unit test на `LogNamespaceManagerSummary()`. +2. Проверяем, что helper безопасен на `nil` logger и не паникует на заполненном summary. + +## Что НЕ меняем + +- не меняем runtime behavior; +- не публикуем summary наружу через HTTP.# 2026-04-26 — NamespaceManager rewrite, step 46 + +## Цель шага + Начать реальное использование `NamespaceManager.Summary()` в orchestration layer. ## Что меняем diff --git a/pkg/utils/namespace_manager_test.go b/pkg/utils/namespace_manager_test.go index d4cd1ca0..cecec3d2 100644 --- a/pkg/utils/namespace_manager_test.go +++ b/pkg/utils/namespace_manager_test.go @@ -562,6 +562,26 @@ func TestNamespaceManagerSummary(t *testing.T) { } } +func TestLogNamespaceManagerSummary(t *testing.T) { + LogNamespaceManagerSummary(nil, "ignored", NamespaceManagerSummary{}) + + logger := zap.NewNop() + summary := NamespaceManagerSummary{ + TotalNamespaces: 2, + LiveNamespaces: 1, + PhaseCounts: map[NamespacePhase]int{ + NamespacePhaseActive: 1, + NamespacePhaseRemoved: 1, + }, + SourceCounts: map[NamespaceSource]int{ + NamespaceSourceWatcher: 1, + NamespaceSourceEnv: 1, + }, + Subscribers: []string{"router", "buildermgr"}, + } + + LogNamespaceManagerSummary(logger, "namespace summary", summary) +} func TestLogNamespaceManagerSummaryWithNilLogger(t *testing.T) { LogNamespaceManagerSummary(nil, "ignored", NamespaceManagerSummary{TotalNamespaces: 1}) }