Refactor TestImportance_StringFuncs in header_test.go

Separated test cases for String, NumString, and XPrioString methods of the Importance object into distinct sub-tests. Improved readability and maintainability by grouping similar assertions together.
This commit is contained in:
Winni Neessen 2024-10-25 09:48:00 +02:00
parent eebbaa2513
commit c58d52e49a
Signed by: wneessen
GPG key ID: 385AC9889632126E

View file

@ -8,12 +8,11 @@ import (
"testing" "testing"
) )
// TestImportance_StringFuncs tests the different string method of the Importance object func TestImportance_Stringer(t *testing.T) {
func TestImportance_StringFuncs(t *testing.T) {
tests := []struct { tests := []struct {
name string name string
imp Importance imp Importance
wantns string wantnum string
xprio string xprio string
want string want string
}{ }{
@ -24,22 +23,35 @@ func TestImportance_StringFuncs(t *testing.T) {
{"Importance: Urgent", ImportanceUrgent, "1", "1", "urgent"}, {"Importance: Urgent", ImportanceUrgent, "1", "1", "urgent"},
{"Importance: Unknown", 9, "", "", ""}, {"Importance: Unknown", 9, "", "", ""},
} }
t.Run("String", func(t *testing.T) {
for _, tt := range tests { for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) { t.Run(tt.name, func(t *testing.T) {
if tt.imp.NumString() != tt.wantns {
t.Errorf("wrong number string for Importance returned. Expected: %s, got: %s",
tt.wantns, tt.imp.NumString())
}
if tt.imp.XPrioString() != tt.xprio {
t.Errorf("wrong x-prio string for Importance returned. Expected: %s, got: %s",
tt.xprio, tt.imp.XPrioString())
}
if tt.imp.String() != tt.want { if tt.imp.String() != tt.want {
t.Errorf("wrong string for Importance returned. Expected: %s, got: %s", t.Errorf("wrong string for Importance returned. Expected: %s, got: %s", tt.want, tt.imp.String())
tt.want, tt.imp.String())
} }
}) })
} }
})
t.Run("NumString", func(t *testing.T) {
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if tt.imp.NumString() != tt.wantnum {
t.Errorf("wrong number string for Importance returned. Expected: %s, got: %s", tt.wantnum,
tt.imp.NumString())
}
})
}
})
t.Run("XPrioString", func(t *testing.T) {
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
if tt.imp.XPrioString() != tt.xprio {
t.Errorf("wrong x-prio string for Importance returned. Expected: %s, got: %s", tt.xprio,
tt.imp.XPrioString())
}
})
}
})
} }
// TestAddrHeader_String tests the string method of the AddrHeader object // TestAddrHeader_String tests the string method of the AddrHeader object