mirror of
https://github.com/rancher/os.git
synced 2025-04-30 04:14:15 +00:00
70 lines
1.6 KiB
Go
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")
|
|
}
|