2018-03-06 10:41:43 -05:00
|
|
|
package loggerutils // import "github.com/docker/docker/daemon/logger/loggerutils"
|
2018-03-06 10:32:47 -05:00
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
|
|
|
|
"github.com/docker/docker/daemon/logger"
|
|
|
|
)
|
|
|
|
|
|
|
|
func TestParseLogTagDefaultTag(t *testing.T) {
|
|
|
|
info := buildContext(map[string]string{})
|
|
|
|
tag, e := ParseLogTag(info, "{{.ID}}")
|
|
|
|
assertTag(t, e, tag, info.ID())
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestParseLogTag(t *testing.T) {
|
|
|
|
info := buildContext(map[string]string{"tag": "{{.ImageName}}/{{.Name}}/{{.ID}}"})
|
|
|
|
tag, e := ParseLogTag(info, "{{.ID}}")
|
|
|
|
assertTag(t, e, tag, "test-image/test-container/container-ab")
|
|
|
|
}
|
|
|
|
|
|
|
|
func TestParseLogTagEmptyTag(t *testing.T) {
|
|
|
|
info := buildContext(map[string]string{})
|
|
|
|
tag, e := ParseLogTag(info, "{{.DaemonName}}/{{.ID}}")
|
|
|
|
assertTag(t, e, tag, "test-dockerd/container-ab")
|
|
|
|
}
|
|
|
|
|
|
|
|
// Helpers
|
|
|
|
|
|
|
|
func buildContext(cfg map[string]string) logger.Info {
|
|
|
|
return logger.Info{
|
|
|
|
ContainerID: "container-abcdefghijklmnopqrstuvwxyz01234567890",
|
|
|
|
ContainerName: "/test-container",
|
|
|
|
ContainerImageID: "image-abcdefghijklmnopqrstuvwxyz01234567890",
|
|
|
|
ContainerImageName: "test-image",
|
|
|
|
Config: cfg,
|
|
|
|
DaemonName: "test-dockerd",
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func assertTag(t *testing.T, e error, tag string, expected string) {
|
|
|
|
if e != nil {
|
|
|
|
t.Fatalf("Error generating tag: %q", e)
|
|
|
|
}
|
|
|
|
if tag != expected {
|
|
|
|
t.Fatalf("Wrong tag: %q, should be %q", tag, expected)
|
|
|
|
}
|
|
|
|
}
|