1
0
mirror of https://github.com/rancher/os.git synced 2025-04-30 04:14:15 +00:00
os/config/docker_config_test.go
2016-11-21 15:18:44 -08:00

70 lines
1.6 KiB
Go

package config
import (
"fmt"
"strings"
"testing"
)
func testContains(t *testing.T, s string, substrs ...string) {
for _, substr := range substrs {
if !strings.Contains(s, substr) {
t.Fail()
}
}
}
func TestGenerateEngineOptsString(t *testing.T) {
if len(generateEngineOptsSlice(EngineOpts{})) != 0 {
t.Fail()
}
if len(generateEngineOptsSlice(EngineOpts{
Host: []string{
"",
},
})) != 0 {
t.Fail()
}
if len(generateEngineOptsSlice(EngineOpts{
LogOpts: map[string]string{
"max-file": "",
},
})) != 0 {
t.Fail()
}
testContains(t, fmt.Sprint(generateEngineOptsSlice(EngineOpts{
Bridge: "bridge",
})), "--bridge bridge")
testContains(t, fmt.Sprint(generateEngineOptsSlice(EngineOpts{
SelinuxEnabled: &[]bool{true}[0],
})), "--selinux-enabled")
testContains(t, fmt.Sprint(generateEngineOptsSlice(EngineOpts{
SelinuxEnabled: &[]bool{false}[0],
})), "--selinux-enabled=false")
testContains(t, fmt.Sprint(generateEngineOptsSlice(EngineOpts{
Host: []string{
"unix:///var/run/system-docker.sock",
"unix:///var/run/docker.sock",
},
})), "--host unix:///var/run/system-docker.sock", "--host unix:///var/run/docker.sock")
testContains(t, fmt.Sprint(generateEngineOptsSlice(EngineOpts{
LogOpts: map[string]string{
"max-size": "25m",
"max-file": "2",
},
})), "--log-opt max-size=25m", "--log-opt max-file=2")
testContains(t, fmt.Sprint(generateEngineOptsSlice(EngineOpts{
Bridge: "bridge",
SelinuxEnabled: &[]bool{true}[0],
LogOpts: map[string]string{
"max-size": "25m",
"max-file": "2",
},
})), "--bridge bridge", "--selinux-enabled", "--log-opt max-size=25m", "--log-opt max-file=2")
}