X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/6c73e6a485cba63cb386292d85339ad6a2757043..f10e92fe095a7b292dde71da0f1d8465312236d7:/lib/controller/localdb/login_pam_test.go diff --git a/lib/controller/localdb/login_pam_test.go b/lib/controller/localdb/login_pam_test.go index 0282b566f1..2c3fa4d0f7 100644 --- a/lib/controller/localdb/login_pam_test.go +++ b/lib/controller/localdb/login_pam_test.go @@ -5,63 +5,33 @@ package localdb import ( - "context" "io/ioutil" "net/http" "os" "strings" - "git.arvados.org/arvados.git/lib/config" - "git.arvados.org/arvados.git/lib/controller/rpc" - "git.arvados.org/arvados.git/lib/ctrlctx" "git.arvados.org/arvados.git/sdk/go/arvados" - "git.arvados.org/arvados.git/sdk/go/arvadostest" - "git.arvados.org/arvados.git/sdk/go/ctxlog" - "github.com/jmoiron/sqlx" check "gopkg.in/check.v1" ) var _ = check.Suite(&PamSuite{}) type PamSuite struct { - cluster *arvados.Cluster - ctrl *pamLoginController - railsSpy *arvadostest.Proxy - db *sqlx.DB - ctx context.Context - rollback func() error + localdbSuite } -func (s *PamSuite) SetUpSuite(c *check.C) { - cfg, err := config.NewLoader(nil, ctxlog.TestLogger(c)).Load() - c.Assert(err, check.IsNil) - s.cluster, err = cfg.GetCluster("") - c.Assert(err, check.IsNil) +func (s *PamSuite) SetUpTest(c *check.C) { + s.localdbSuite.SetUpTest(c) s.cluster.Login.PAM.Enable = true s.cluster.Login.PAM.DefaultEmailDomain = "example.com" - s.railsSpy = arvadostest.NewProxy(c, s.cluster.Services.RailsAPI) - s.ctrl = &pamLoginController{ + s.localdb.loginController = &pamLoginController{ Cluster: s.cluster, - Parent: &Conn{railsProxy: rpc.NewConn(s.cluster.ClusterID, s.railsSpy.URL, true, rpc.PassthroughTokenProvider)}, - } - s.db = arvadostest.DB(c, s.cluster) -} - -func (s *PamSuite) SetUpTest(c *check.C) { - tx, err := s.db.Beginx() - c.Assert(err, check.IsNil) - s.ctx = ctrlctx.NewWithTransaction(context.Background(), tx) - s.rollback = tx.Rollback -} - -func (s *PamSuite) TearDownTest(c *check.C) { - if s.rollback != nil { - s.rollback() + Parent: s.localdb, } } func (s *PamSuite) TestLoginFailure(c *check.C) { - resp, err := s.ctrl.UserAuthenticate(s.ctx, arvados.UserAuthenticateOptions{ + resp, err := s.localdb.UserAuthenticate(s.ctx, arvados.UserAuthenticateOptions{ Username: "bogususername", Password: "boguspassword", }) @@ -91,7 +61,7 @@ func (s *PamSuite) TestLoginSuccess(c *check.C) { c.Assert(len(lines), check.Equals, 2, check.Commentf("credentials file %s should contain \"username\\npassword\"", testCredsFile)) u, p := lines[0], lines[1] - resp, err := s.ctrl.UserAuthenticate(s.ctx, arvados.UserAuthenticateOptions{ + resp, err := s.localdb.UserAuthenticate(s.ctx, arvados.UserAuthenticateOptions{ Username: u, Password: p, })