From 54391798a05d0c1103ba0a718e11ca888300ac45 Mon Sep 17 00:00:00 2001 From: Steve Yegge Date: Fri, 31 Oct 2025 17:54:14 -0700 Subject: [PATCH] Add tests for internal/importer field comparison functions - Added tests for equalPtrStr (0% -> 100% coverage) - Added tests for equalIssueType (50% -> 100% coverage) - Improved internal/importer coverage from 31.2% to 33.5% - Overall project coverage increased to 46.0% --- internal/importer/importer_test.go | 54 ++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/internal/importer/importer_test.go b/internal/importer/importer_test.go index 8dda7784..52bab261 100644 --- a/internal/importer/importer_test.go +++ b/internal/importer/importer_test.go @@ -169,6 +169,60 @@ func TestFieldComparator_StringConversion(t *testing.T) { } } +func TestFieldComparator_EqualPtrStr(t *testing.T) { + fc := newFieldComparator() + + tests := []struct { + name string + existing *string + newVal interface{} + want bool + }{ + {"both nil", nil, "", true}, + {"existing nil, new empty", nil, "", true}, + {"existing nil, new string", nil, "test", false}, + {"equal strings", stringPtr("test"), "test", true}, + {"different strings", stringPtr("test"), "other", false}, + {"existing string, new nil", stringPtr("test"), nil, false}, + {"invalid type", stringPtr("test"), 123, false}, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got := fc.equalPtrStr(tt.existing, tt.newVal) + if got != tt.want { + t.Errorf("equalPtrStr() = %v, want %v", got, tt.want) + } + }) + } +} + +func TestFieldComparator_EqualIssueType(t *testing.T) { + fc := newFieldComparator() + + tests := []struct { + name string + existing types.IssueType + newVal interface{} + want bool + }{ + {"same IssueType", types.TypeTask, types.TypeTask, true}, + {"different IssueType", types.TypeTask, types.TypeBug, false}, + {"IssueType vs string match", types.TypeTask, "task", true}, + {"IssueType vs string no match", types.TypeTask, "bug", false}, + {"invalid type", types.TypeTask, 123, false}, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got := fc.equalIssueType(tt.existing, tt.newVal) + if got != tt.want { + t.Errorf("equalIssueType() = %v, want %v", got, tt.want) + } + }) + } +} + func TestFieldComparator_IntConversion(t *testing.T) { fc := newFieldComparator()