mirror of https://github.com/docker/docs.git
46 lines
1.0 KiB
Go
46 lines
1.0 KiB
Go
package commands
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
|
|
"github.com/docker/machine/drivers/fakedriver"
|
|
"github.com/docker/machine/libmachine/host"
|
|
"github.com/docker/machine/libmachine/state"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
var (
|
|
h = host.Host{
|
|
Name: "foo",
|
|
DriverName: "fakedriver",
|
|
Driver: &fakedriver.Driver{
|
|
MockState: state.Running,
|
|
},
|
|
}
|
|
)
|
|
|
|
func TestIsActive(t *testing.T) {
|
|
cases := []struct {
|
|
dockerHost string
|
|
state state.State
|
|
expected bool
|
|
}{
|
|
{"", state.Running, false},
|
|
{"tcp://5.6.7.8:2376", state.Running, false},
|
|
{"tcp://1.2.3.4:2376", state.Stopped, false},
|
|
{"tcp://1.2.3.4:2376", state.Running, true},
|
|
{"tcp://1.2.3.4:3376", state.Running, true},
|
|
}
|
|
|
|
for _, c := range cases {
|
|
os.Unsetenv("DOCKER_HOST")
|
|
if c.dockerHost != "" {
|
|
os.Setenv("DOCKER_HOST", c.dockerHost)
|
|
}
|
|
actual, err := isActive(&h, c.state, "tcp://1.2.3.4:2376")
|
|
assert.Equal(t, c.expected, actual, "IsActive(%s, \"%s\") should return %v, but didn't", c.state, c.dockerHost, c.expected)
|
|
assert.NoError(t, err)
|
|
}
|
|
}
|