moby/integration-cli/environment/environment.go
Sam Whited b37c214e3c testutil: make testing packages public
This was done with something along the lines of:

```
mv internal/test testutil
pushd testutil/; grep -IRl "package test" | xargs -I '{}' sed -i -e 's|package test|package testutil|g' {}; popd
mv internal/testutil/*.go testutil/ && rm -rf internal/
grep -IRl "github.com\/docker\/docker\/internal\/test" | xargs -I '{}' sed -i -e 's|github.com/docker/docker/internal/test|github.com/docker/docker/test|g' {}
goimports .
```

I also modified the basic plugin path in testutil/fixtures/plugin.

Signed-off-by: Sam Whited <sam@samwhited.com>
2019-09-11 07:47:23 -05:00

49 lines
1,009 B
Go

package environment // import "github.com/docker/docker/integration-cli/environment"
import (
"os"
"os/exec"
"github.com/docker/docker/testutil/environment"
)
var (
// DefaultClientBinary is the name of the docker binary
DefaultClientBinary = os.Getenv("TEST_CLIENT_BINARY")
)
func init() {
if DefaultClientBinary == "" {
DefaultClientBinary = "docker"
}
}
// Execution contains information about the current test execution and daemon
// under test
type Execution struct {
environment.Execution
dockerBinary string
}
// DockerBinary returns the docker binary for this testing environment
func (e *Execution) DockerBinary() string {
return e.dockerBinary
}
// New returns details about the testing environment
func New() (*Execution, error) {
env, err := environment.New()
if err != nil {
return nil, err
}
dockerBinary, err := exec.LookPath(DefaultClientBinary)
if err != nil {
return nil, err
}
return &Execution{
Execution: *env,
dockerBinary: dockerBinary,
}, nil
}