Merge branch 'master' into 16007-permission-table-rb
[arvados.git] / lib / controller / localdb / login_ldap_docker_test.go
1 // Copyright (C) The Arvados Authors. All rights reserved.
2 //
3 // SPDX-License-Identifier: AGPL-3.0
4
5 package localdb
6
7 import (
8         "os"
9         "os/exec"
10         "testing"
11
12         check "gopkg.in/check.v1"
13 )
14
15 func haveDocker() bool {
16         _, err := exec.Command("docker", "info").CombinedOutput()
17         return err == nil
18 }
19
20 func (s *LDAPSuite) TestLoginLDAPViaPAM(c *check.C) {
21         if testing.Short() {
22                 c.Skip("skipping docker test in short mode")
23         }
24         if !haveDocker() {
25                 c.Skip("skipping docker test because docker is not available")
26         }
27         cmd := exec.Command("bash", "login_ldap_docker_test.sh")
28         cmd.Stdout = os.Stderr
29         cmd.Stderr = os.Stderr
30         cmd.Env = append(os.Environ(), "config_method=pam")
31         err := cmd.Run()
32         c.Check(err, check.IsNil)
33 }
34
35 func (s *LDAPSuite) TestLoginLDAPBuiltin(c *check.C) {
36         if testing.Short() {
37                 c.Skip("skipping docker test in short mode")
38         }
39         if !haveDocker() {
40                 c.Skip("skipping docker test because docker is not available")
41         }
42         cmd := exec.Command("bash", "login_ldap_docker_test.sh")
43         cmd.Stdout = os.Stderr
44         cmd.Stderr = os.Stderr
45         cmd.Env = append(os.Environ(), "config_method=ldap")
46         err := cmd.Run()
47         c.Check(err, check.IsNil)
48 }