60 lines
1.1 KiB
Go
60 lines
1.1 KiB
Go
![]() |
// +build windows
|
||
|
|
||
|
package daemon
|
||
|
|
||
|
import (
|
||
|
"io/ioutil"
|
||
|
"testing"
|
||
|
)
|
||
|
|
||
|
func TestDaemonConfigurationMerge(t *testing.T) {
|
||
|
f, err := ioutil.TempFile("", "docker-config-")
|
||
|
if err != nil {
|
||
|
t.Fatal(err)
|
||
|
}
|
||
|
|
||
|
configFile := f.Name()
|
||
|
|
||
|
f.Write([]byte(`
|
||
|
{
|
||
|
"debug": true,
|
||
|
"log-opts": {
|
||
|
"tag": "test_tag"
|
||
|
}
|
||
|
}`))
|
||
|
|
||
|
f.Close()
|
||
|
|
||
|
c := &Config{
|
||
|
CommonConfig: CommonConfig{
|
||
|
AutoRestart: true,
|
||
|
LogConfig: LogConfig{
|
||
|
Type: "syslog",
|
||
|
Config: map[string]string{"tag": "test"},
|
||
|
},
|
||
|
},
|
||
|
}
|
||
|
|
||
|
cc, err := MergeDaemonConfigurations(c, nil, configFile)
|
||
|
if err != nil {
|
||
|
t.Fatal(err)
|
||
|
}
|
||
|
if !cc.Debug {
|
||
|
t.Fatalf("expected %v, got %v\n", true, cc.Debug)
|
||
|
}
|
||
|
if !cc.AutoRestart {
|
||
|
t.Fatalf("expected %v, got %v\n", true, cc.AutoRestart)
|
||
|
}
|
||
|
if cc.LogConfig.Type != "syslog" {
|
||
|
t.Fatalf("expected syslog config, got %q\n", cc.LogConfig)
|
||
|
}
|
||
|
|
||
|
if configValue, OK := cc.LogConfig.Config["tag"]; !OK {
|
||
|
t.Fatal("expected syslog config attributes, got nil\n")
|
||
|
} else {
|
||
|
if configValue != "test_tag" {
|
||
|
t.Fatalf("expected syslog config attributes 'tag=test_tag', got 'tag=%s'\n", configValue)
|
||
|
}
|
||
|
}
|
||
|
}
|