Move fakedriver to its own module for reuse

Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
This commit is contained in:
Nathan LeClaire 2015-03-20 16:48:33 -07:00
parent 73862e863c
commit d189baf36c
3 changed files with 129 additions and 228 deletions

View File

@ -7,18 +7,16 @@ import (
"io"
"io/ioutil"
"os"
"os/exec"
"path/filepath"
"strings"
"testing"
"github.com/codegangsta/cli"
drivers "github.com/docker/machine/drivers"
"github.com/docker/machine/drivers/fakedriver"
"github.com/docker/machine/libmachine"
"github.com/docker/machine/libmachine/auth"
"github.com/docker/machine/libmachine/engine"
"github.com/docker/machine/libmachine/swarm"
"github.com/docker/machine/provider"
"github.com/docker/machine/state"
)
@ -126,113 +124,6 @@ func (d DriverOptionsMock) Int(key string) int {
func (d DriverOptionsMock) Bool(key string) bool {
return d.Data[key].(bool)
}
type FakeDriver struct {
MockState state.State
}
func (d *FakeDriver) DriverName() string {
return "fakedriver"
}
func (d *FakeDriver) AuthorizePort(ports []*drivers.Port) error {
return nil
}
func (d *FakeDriver) DeauthorizePort(ports []*drivers.Port) error {
return nil
}
func (d *FakeDriver) SetConfigFromFlags(flags drivers.DriverOptions) error {
return nil
}
func (d *FakeDriver) GetURL() (string, error) {
return "", nil
}
func (d *FakeDriver) GetMachineName() string {
return ""
}
func (d *FakeDriver) GetProviderType() provider.ProviderType {
return provider.None
}
func (d *FakeDriver) GetIP() (string, error) {
return "", nil
}
func (d *FakeDriver) GetSSHHostname() (string, error) {
return "", nil
}
func (d *FakeDriver) GetSSHKeyPath() string {
return ""
}
func (d *FakeDriver) GetSSHPort() (int, error) {
return 0, nil
}
func (d *FakeDriver) GetSSHUsername() string {
return ""
}
func (d *FakeDriver) GetState() (state.State, error) {
return d.MockState, nil
}
func (d *FakeDriver) PreCreateCheck() error {
return nil
}
func (d *FakeDriver) Create() error {
return nil
}
func (d *FakeDriver) Remove() error {
return nil
}
func (d *FakeDriver) Start() error {
d.MockState = state.Running
return nil
}
func (d *FakeDriver) Stop() error {
d.MockState = state.Stopped
return nil
}
func (d *FakeDriver) Restart() error {
return nil
}
func (d *FakeDriver) Kill() error {
return nil
}
func (d *FakeDriver) Upgrade() error {
return nil
}
func (d *FakeDriver) StartDocker() error {
return nil
}
func (d *FakeDriver) StopDocker() error {
return nil
}
func (d *FakeDriver) GetDockerConfigDir() string {
return ""
}
func (d *FakeDriver) GetSSHCommand(args ...string) (*exec.Cmd, error) {
return &exec.Cmd{}, nil
}
func TestGetHostState(t *testing.T) {
defer cleanup()
@ -247,7 +138,7 @@ func TestGetHostState(t *testing.T) {
{
Name: "foo",
DriverName: "fakedriver",
Driver: &FakeDriver{
Driver: &fakedriver.FakeDriver{
MockState: state.Running,
},
StorePath: store.GetPath(),
@ -262,7 +153,7 @@ func TestGetHostState(t *testing.T) {
{
Name: "bar",
DriverName: "fakedriver",
Driver: &FakeDriver{
Driver: &fakedriver.FakeDriver{
MockState: state.Stopped,
},
StorePath: store.GetPath(),
@ -277,7 +168,7 @@ func TestGetHostState(t *testing.T) {
{
Name: "baz",
DriverName: "fakedriver",
Driver: &FakeDriver{
Driver: &fakedriver.FakeDriver{
MockState: state.Running,
},
StorePath: store.GetPath(),
@ -331,7 +222,7 @@ func TestRunActionForeachMachine(t *testing.T) {
{
Name: "foo",
DriverName: "fakedriver",
Driver: &FakeDriver{
Driver: &fakedriver.FakeDriver{
MockState: state.Running,
},
StorePath: storePath,
@ -339,7 +230,7 @@ func TestRunActionForeachMachine(t *testing.T) {
{
Name: "bar",
DriverName: "fakedriver",
Driver: &FakeDriver{
Driver: &fakedriver.FakeDriver{
MockState: state.Stopped,
},
StorePath: storePath,
@ -351,7 +242,7 @@ func TestRunActionForeachMachine(t *testing.T) {
// virtualbox... (to test serial actions)
// It's actually FakeDriver!
DriverName: "virtualbox",
Driver: &FakeDriver{
Driver: &fakedriver.FakeDriver{
MockState: state.Stopped,
},
StorePath: storePath,
@ -359,7 +250,7 @@ func TestRunActionForeachMachine(t *testing.T) {
{
Name: "spam",
DriverName: "virtualbox",
Driver: &FakeDriver{
Driver: &fakedriver.FakeDriver{
MockState: state.Running,
},
StorePath: storePath,
@ -367,7 +258,7 @@ func TestRunActionForeachMachine(t *testing.T) {
{
Name: "eggs",
DriverName: "fakedriver",
Driver: &FakeDriver{
Driver: &fakedriver.FakeDriver{
MockState: state.Stopped,
},
StorePath: storePath,
@ -375,7 +266,7 @@ func TestRunActionForeachMachine(t *testing.T) {
{
Name: "ham",
DriverName: "fakedriver",
Driver: &FakeDriver{
Driver: &fakedriver.FakeDriver{
MockState: state.Running,
},
StorePath: storePath,

View File

@ -0,0 +1,115 @@
package fakedriver
import (
"os/exec"
"github.com/docker/machine/drivers"
"github.com/docker/machine/provider"
"github.com/docker/machine/state"
)
type FakeDriver struct {
MockState state.State
}
func (d *FakeDriver) DriverName() string {
return "fakedriver"
}
func (d *FakeDriver) AuthorizePort(ports []*drivers.Port) error {
return nil
}
func (d *FakeDriver) DeauthorizePort(ports []*drivers.Port) error {
return nil
}
func (d *FakeDriver) SetConfigFromFlags(flags drivers.DriverOptions) error {
return nil
}
func (d *FakeDriver) GetURL() (string, error) {
return "", nil
}
func (d *FakeDriver) GetMachineName() string {
return ""
}
func (d *FakeDriver) GetProviderType() provider.ProviderType {
return provider.None
}
func (d *FakeDriver) GetIP() (string, error) {
return "1.2.3.4", nil
}
func (d *FakeDriver) GetSSHHostname() (string, error) {
return "", nil
}
func (d *FakeDriver) GetSSHKeyPath() string {
return ""
}
func (d *FakeDriver) GetSSHPort() (int, error) {
return 0, nil
}
func (d *FakeDriver) GetSSHUsername() string {
return ""
}
func (d *FakeDriver) GetState() (state.State, error) {
return d.MockState, nil
}
func (d *FakeDriver) PreCreateCheck() error {
return nil
}
func (d *FakeDriver) Create() error {
return nil
}
func (d *FakeDriver) Remove() error {
return nil
}
func (d *FakeDriver) Start() error {
d.MockState = state.Running
return nil
}
func (d *FakeDriver) Stop() error {
d.MockState = state.Stopped
return nil
}
func (d *FakeDriver) Restart() error {
return nil
}
func (d *FakeDriver) Kill() error {
return nil
}
func (d *FakeDriver) Upgrade() error {
return nil
}
func (d *FakeDriver) StartDocker() error {
return nil
}
func (d *FakeDriver) StopDocker() error {
return nil
}
func (d *FakeDriver) GetDockerConfigDir() string {
return ""
}
func (d *FakeDriver) GetSSHCommand(args ...string) (*exec.Cmd, error) {
return &exec.Cmd{}, nil
}

View File

@ -2,122 +2,17 @@ package provision
import (
"fmt"
"os/exec"
"regexp"
"strings"
"testing"
"github.com/docker/machine/drivers"
"github.com/docker/machine/drivers/fakedriver"
"github.com/docker/machine/libmachine/auth"
"github.com/docker/machine/provider"
"github.com/docker/machine/state"
)
type FakeDriver struct{}
func (d FakeDriver) DriverName() string {
return "fakedriver"
}
func (d FakeDriver) AuthorizePort(ports []*drivers.Port) error {
return nil
}
func (d FakeDriver) DeauthorizePort(ports []*drivers.Port) error {
return nil
}
func (d FakeDriver) SetConfigFromFlags(flags drivers.DriverOptions) error {
return nil
}
func (d FakeDriver) GetURL() (string, error) {
return "", nil
}
func (d FakeDriver) GetMachineName() string {
return ""
}
func (d FakeDriver) GetProviderType() provider.ProviderType {
return provider.None
}
func (d FakeDriver) GetIP() (string, error) {
return "1.2.3.4", nil
}
func (d FakeDriver) GetSSHHostname() (string, error) {
return "", nil
}
func (d FakeDriver) GetSSHKeyPath() string {
return ""
}
func (d FakeDriver) GetSSHPort() (int, error) {
return 0, nil
}
func (d FakeDriver) GetSSHUsername() string {
return ""
}
func (d FakeDriver) GetState() (state.State, error) {
return state.Running, nil
}
func (d FakeDriver) PreCreateCheck() error {
return nil
}
func (d FakeDriver) Create() error {
return nil
}
func (d FakeDriver) Remove() error {
return nil
}
func (d FakeDriver) Start() error {
return nil
}
func (d FakeDriver) Stop() error {
return nil
}
func (d FakeDriver) Restart() error {
return nil
}
func (d FakeDriver) Kill() error {
return nil
}
func (d FakeDriver) Upgrade() error {
return nil
}
func (d FakeDriver) StartDocker() error {
return nil
}
func (d FakeDriver) StopDocker() error {
return nil
}
func (d FakeDriver) GetDockerConfigDir() string {
return ""
}
func (d FakeDriver) GetSSHCommand(args ...string) (*exec.Cmd, error) {
return &exec.Cmd{}, nil
}
func TestGenerateDockerConfigBoot2Docker(t *testing.T) {
p := &Boot2DockerProvisioner{
Driver: FakeDriver{},
Driver: &fakedriver.FakeDriver{},
}
dockerPort := 1234
authConfig := auth.AuthOptions{
@ -155,7 +50,7 @@ func TestGenerateDockerConfigBoot2Docker(t *testing.T) {
func TestMachinePortBoot2Docker(t *testing.T) {
p := &Boot2DockerProvisioner{
Driver: FakeDriver{},
Driver: &fakedriver.FakeDriver{},
}
dockerPort := 2376
bindUrl := fmt.Sprintf("tcp://0.0.0.0:%d", dockerPort)
@ -187,7 +82,7 @@ func TestMachinePortBoot2Docker(t *testing.T) {
func TestMachineCustomPortBoot2Docker(t *testing.T) {
p := &Boot2DockerProvisioner{
Driver: FakeDriver{},
Driver: &fakedriver.FakeDriver{},
}
dockerPort := 3376
bindUrl := fmt.Sprintf("tcp://0.0.0.0:%d", dockerPort)