From f63bf5c77b88dfd094b2a5cf8b8f46ca64c67f0f Mon Sep 17 00:00:00 2001 From: aaronschweig Date: Tue, 18 Feb 2025 19:54:16 +0100 Subject: [PATCH 1/3] fix(coloring): invalid color application for rows with VALID column Signed-off-by: aaronschweig --- internal/model1/helpers.go | 2 +- internal/model1/helpers_test.go | 49 +++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+), 1 deletion(-) diff --git a/internal/model1/helpers.go b/internal/model1/helpers.go index fb0ac597a7..2b6d2140f4 100644 --- a/internal/model1/helpers.go +++ b/internal/model1/helpers.go @@ -50,7 +50,7 @@ func IsValid(ns string, h Header, r Row) bool { return true } - return strings.TrimSpace(r.Fields[idx]) == "" + return strings.ToLower(strings.TrimSpace(r.Fields[idx])) == "true" } func sortLabels(m map[string]string) (keys, vals []string) { diff --git a/internal/model1/helpers_test.go b/internal/model1/helpers_test.go index 3e6a04272f..f3db189439 100644 --- a/internal/model1/helpers_test.go +++ b/internal/model1/helpers_test.go @@ -53,6 +53,55 @@ func TestLabelize(t *testing.T) { } } +func TestIsValid(t *testing.T) { + + uu := map[string]struct { + ns string + h Header + r Row + e bool + }{ + "empty": { + ns: "blee", + h: Header{}, + r: Row{}, + e: true, + }, + "valid": { + ns: "blee", + h: Header{HeaderColumn{Name: "VALID"}}, + r: Row{Fields: Fields{"true"}}, + e: true, + }, + "invalid": { + ns: "blee", + h: Header{HeaderColumn{Name: "VALID"}}, + r: Row{Fields: Fields{"false"}}, + e: false, + }, + "valid_capital_case": { + ns: "blee", + h: Header{HeaderColumn{Name: "VALID"}}, + r: Row{Fields: Fields{"True"}}, + e: true, + }, + "valid_all_caps": { + ns: "blee", + h: Header{HeaderColumn{Name: "VALID"}}, + r: Row{Fields: Fields{"TRUE"}}, + e: true, + }, + } + + for k, u := range uu { + t.Run(k, func(t *testing.T) { + valid := IsValid(u.ns, u.h, u.r) + assert.Equal(t, u.e, valid) + }) + } + +} + func TestDurationToSecond(t *testing.T) { uu := map[string]struct { s string From 006bdbb32ab3b3a697ac0fb04172001eaf3bb713 Mon Sep 17 00:00:00 2001 From: aaronschweig Date: Tue, 18 Feb 2025 20:05:05 +0100 Subject: [PATCH 2/3] tests(pod): new valid function needs different test fixtures Signed-off-by: aaronschweig --- internal/render/pod_test.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/render/pod_test.go b/internal/render/pod_test.go index 2c9c96c6cd..7a9cd27378 100644 --- a/internal/render/pod_test.go +++ b/internal/render/pod_test.go @@ -45,7 +45,7 @@ func TestPodColorer(t *testing.T) { re: model1.RowEvent{ Kind: model1.EventAdd, Row: model1.Row{ - Fields: model1.Fields{"blee", "fred", "1/1", "0", render.Running, ""}, + Fields: model1.Fields{"blee", "fred", "1/1", "0", render.Running, "true"}, }, }, e: model1.StdColor, @@ -115,7 +115,7 @@ func TestPodColorer(t *testing.T) { re: model1.RowEvent{ Kind: model1.EventAdd, Row: model1.Row{ - Fields: model1.Fields{"blee", "fred", "1/1", "0", "blee", ""}, + Fields: model1.Fields{"blee", "fred", "1/1", "0", "blee", "true"}, }, }, e: model1.AddColor, From 4c9da83ad15a37bd4dcb051839a0f738505e100f Mon Sep 17 00:00:00 2001 From: aaronschweig Date: Tue, 18 Feb 2025 20:09:52 +0100 Subject: [PATCH 3/3] fix: fix tests without introducing a regression bug Signed-off-by: aaronschweig --- internal/model1/helpers.go | 2 +- internal/render/pod_test.go | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/internal/model1/helpers.go b/internal/model1/helpers.go index 2b6d2140f4..e1664940c5 100644 --- a/internal/model1/helpers.go +++ b/internal/model1/helpers.go @@ -50,7 +50,7 @@ func IsValid(ns string, h Header, r Row) bool { return true } - return strings.ToLower(strings.TrimSpace(r.Fields[idx])) == "true" + return strings.TrimSpace(r.Fields[idx]) == "" || strings.ToLower(strings.TrimSpace(r.Fields[idx])) == "true" } func sortLabels(m map[string]string) (keys, vals []string) { diff --git a/internal/render/pod_test.go b/internal/render/pod_test.go index 7a9cd27378..2c9c96c6cd 100644 --- a/internal/render/pod_test.go +++ b/internal/render/pod_test.go @@ -45,7 +45,7 @@ func TestPodColorer(t *testing.T) { re: model1.RowEvent{ Kind: model1.EventAdd, Row: model1.Row{ - Fields: model1.Fields{"blee", "fred", "1/1", "0", render.Running, "true"}, + Fields: model1.Fields{"blee", "fred", "1/1", "0", render.Running, ""}, }, }, e: model1.StdColor, @@ -115,7 +115,7 @@ func TestPodColorer(t *testing.T) { re: model1.RowEvent{ Kind: model1.EventAdd, Row: model1.Row{ - Fields: model1.Fields{"blee", "fred", "1/1", "0", "blee", "true"}, + Fields: model1.Fields{"blee", "fred", "1/1", "0", "blee", ""}, }, }, e: model1.AddColor,