Overview ▹
Overview ▾
Package dockertest contains helper functions for setting up and tearing down docker containers to aid in testing.
Index
- Constants
- Variables
- func IP(containerID string) (string, error)
- func KillContainer(container string) error
- func Pull(image string) error
- type ContainerID
- func SetupMongoContainer(t *testing.T) (c ContainerID, ip string)
- func SetupMySQLContainer(t *testing.T, dbname string) (c ContainerID, ip string)
- func SetupPostgreSQLContainer(t *testing.T, dbname string) (c ContainerID, ip string)
- func (c ContainerID) IP() (string, error)
- func (c ContainerID) Kill() error
- func (c ContainerID) KillRemove(t *testing.T)
- func (c ContainerID) Remove() error
Package files
Constants
const ( MySQLUsername = "root" MySQLPassword = "root" PostgresUsername = "docker" // set up by the dockerfile of postgresImage PostgresPassword = "docker" // set up by the dockerfile of postgresImage )
Variables
var Debug bool
Debug when set, prevents any container from being removed.
func IP
func IP(containerID string) (string, error)
IP returns the IP address of the container.
func KillContainer
func KillContainer(container string) error
func Pull
func Pull(image string) error
Pull retrieves the docker image with 'docker pull'.
type ContainerID
type ContainerID string
func SetupMongoContainer
func SetupMongoContainer(t *testing.T) (c ContainerID, ip string)
SetupMongoContainer sets up a real MongoDB instance for testing purposes, using a Docker container. It returns the container ID and its IP address, or makes the test fail on error. Currently using https://index.docker.io/u/robinvdvleuten/mongo/
func SetupMySQLContainer
func SetupMySQLContainer(t *testing.T, dbname string) (c ContainerID, ip string)
SetupMySQLContainer sets up a real MySQL instance for testing purposes, using a Docker container. It returns the container ID and its IP address, or makes the test fail on error. Currently using https://hub.docker.com/_/mysql/
func SetupPostgreSQLContainer
func SetupPostgreSQLContainer(t *testing.T, dbname string) (c ContainerID, ip string)
SetupPostgreSQLContainer sets up a real PostgreSQL instance for testing purposes, using a Docker container. It returns the container ID and its IP address, or makes the test fail on error. Currently using https://index.docker.io/u/nornagon/postgres
func (ContainerID) IP
func (c ContainerID) IP() (string, error)
func (ContainerID) Kill
func (c ContainerID) Kill() error
func (ContainerID) KillRemove
func (c ContainerID) KillRemove(t *testing.T)
KillRemove calls Kill on the container, and then Remove if there was no error. It logs any error to t.
func (ContainerID) Remove
func (c ContainerID) Remove() error
Remove runs "docker rm" on the container