X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/8f435f4bac86e7ba7dbd9770d2db9bb4db6cf569..e30b7ec3040cac89a2e134fddf8cb47c1905ea82:/lib/controller/localdb/login_ldap_docker_test.go diff --git a/lib/controller/localdb/login_ldap_docker_test.go b/lib/controller/localdb/login_ldap_docker_test.go index 2f0d22075f..3cbf14fe0b 100644 --- a/lib/controller/localdb/login_ldap_docker_test.go +++ b/lib/controller/localdb/login_ldap_docker_test.go @@ -2,32 +2,53 @@ // // SPDX-License-Identifier: AGPL-3.0 -// Skip this slow test unless invoked as "go test -tags docker". -// +build docker - package localdb import ( "os" "os/exec" + "testing" check "gopkg.in/check.v1" ) +func haveDocker() bool { + _, err := exec.Command("docker", "info").CombinedOutput() + return err == nil +} + func (s *LDAPSuite) TestLoginLDAPViaPAM(c *check.C) { + if testing.Short() { + c.Skip("skipping docker test in short mode") + } + if !haveDocker() { + c.Skip("skipping docker test because docker is not available") + } + pgproxy := newPgProxy(c, s.cluster) + defer pgproxy.Close() + cmd := exec.Command("bash", "login_ldap_docker_test.sh") cmd.Stdout = os.Stderr cmd.Stderr = os.Stderr - cmd.Env = append(os.Environ(), "config_method=pam") + cmd.Env = append(os.Environ(), "config_method=pam", "pgport="+pgproxy.Port()) err := cmd.Run() c.Check(err, check.IsNil) } func (s *LDAPSuite) TestLoginLDAPBuiltin(c *check.C) { + if testing.Short() { + c.Skip("skipping docker test in short mode") + } + if !haveDocker() { + c.Skip("skipping docker test because docker is not available") + } + pgproxy := newPgProxy(c, s.cluster) + defer pgproxy.Close() + cmd := exec.Command("bash", "login_ldap_docker_test.sh") cmd.Stdout = os.Stderr cmd.Stderr = os.Stderr - cmd.Env = append(os.Environ(), "config_method=ldap") + cmd.Env = append(os.Environ(), "config_method=ldap", "pgport="+pgproxy.Port()) err := cmd.Run() c.Check(err, check.IsNil) }