test: Add comprehensive tests for dockerServiceDisplayName function
- returns name when present - returns trimmed name - returns truncated ID when name empty (first 12 chars) - returns full short ID when < 12 chars - returns 'service' when both empty/whitespace - prefers name over ID - dockerServiceDisplayName 33.3%→100%
This commit is contained in:
parent
a97a4a022c
commit
884d04ae61
1 changed files with 61 additions and 0 deletions
|
|
@ -2912,3 +2912,64 @@ func TestShouldNotifyAfterCooldown(t *testing.T) {
|
|||
}
|
||||
})
|
||||
}
|
||||
|
||||
func TestDockerServiceDisplayName(t *testing.T) {
|
||||
t.Parallel()
|
||||
|
||||
tests := []struct {
|
||||
name string
|
||||
service models.DockerService
|
||||
expected string
|
||||
}{
|
||||
{
|
||||
name: "returns name when present",
|
||||
service: models.DockerService{Name: "my-service", ID: "abc123456789xyz"},
|
||||
expected: "my-service",
|
||||
},
|
||||
{
|
||||
name: "returns trimmed name",
|
||||
service: models.DockerService{Name: " my-service ", ID: "abc123456789xyz"},
|
||||
expected: "my-service",
|
||||
},
|
||||
{
|
||||
name: "returns truncated ID when name is empty",
|
||||
service: models.DockerService{Name: "", ID: "abc123456789xyz"},
|
||||
expected: "abc123456789",
|
||||
},
|
||||
{
|
||||
name: "returns full short ID when less than 12 chars",
|
||||
service: models.DockerService{Name: "", ID: "abc123"},
|
||||
expected: "abc123",
|
||||
},
|
||||
{
|
||||
name: "returns trimmed ID",
|
||||
service: models.DockerService{Name: "", ID: " abc123456789xyz "},
|
||||
expected: "abc123456789",
|
||||
},
|
||||
{
|
||||
name: "returns 'service' when both name and ID empty",
|
||||
service: models.DockerService{Name: "", ID: ""},
|
||||
expected: "service",
|
||||
},
|
||||
{
|
||||
name: "returns 'service' when both whitespace only",
|
||||
service: models.DockerService{Name: " ", ID: " "},
|
||||
expected: "service",
|
||||
},
|
||||
{
|
||||
name: "prefers name over ID",
|
||||
service: models.DockerService{Name: "preferred", ID: "not-this-id"},
|
||||
expected: "preferred",
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
t.Parallel()
|
||||
result := dockerServiceDisplayName(tt.service)
|
||||
if result != tt.expected {
|
||||
t.Errorf("dockerServiceDisplayName(%+v) = %q, want %q", tt.service, result, tt.expected)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue