X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/741b677dc5e85f60bc03ef130873e49ac0b75766..42c20b25e1325124b88e3b9b285544dc41122b56:/lib/controller/localdb/login_ldap_test.go diff --git a/lib/controller/localdb/login_ldap_test.go b/lib/controller/localdb/login_ldap_test.go index 64ae58bce2..b8ba6b4676 100644 --- a/lib/controller/localdb/login_ldap_test.go +++ b/lib/controller/localdb/login_ldap_test.go @@ -6,18 +6,19 @@ package localdb import ( "context" - "database/sql" "encoding/json" "net" "net/http" "git.arvados.org/arvados.git/lib/config" "git.arvados.org/arvados.git/lib/controller/railsproxy" + "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/auth" "git.arvados.org/arvados.git/sdk/go/ctxlog" "github.com/bradleypeabody/godap" + "github.com/jmoiron/sqlx" check "gopkg.in/check.v1" ) @@ -27,11 +28,11 @@ type LDAPSuite struct { cluster *arvados.Cluster ctrl *ldapLoginController ldap *godap.LDAPServer // fake ldap server that accepts auth goodusername/goodpassword - db *sql.DB + db *sqlx.DB // transaction context ctx context.Context - rollback func() + rollback func() error } func (s *LDAPSuite) TearDownSuite(c *check.C) { @@ -48,6 +49,7 @@ func (s *LDAPSuite) SetUpSuite(c *check.C) { c.Assert(err, check.IsNil) ln, err := net.Listen("tcp", "127.0.0.1:0") + c.Assert(err, check.IsNil) s.ldap = &godap.LDAPServer{ Listener: ln, Handlers: []godap.LDAPRequestHandler{ @@ -62,7 +64,7 @@ func (s *LDAPSuite) SetUpSuite(c *check.C) { return []*godap.LDAPSimpleSearchResultEntry{} } return []*godap.LDAPSimpleSearchResultEntry{ - &godap.LDAPSimpleSearchResultEntry{ + { DN: "cn=" + req.FilterValue + "," + req.BaseDN, Attrs: map[string]interface{}{ "SN": req.FilterValue, @@ -88,18 +90,23 @@ func (s *LDAPSuite) SetUpSuite(c *check.C) { s.cluster.Login.LDAP.SearchBase = "dc=example,dc=com" c.Assert(err, check.IsNil) s.ctrl = &ldapLoginController{ - Cluster: s.cluster, - RailsProxy: railsproxy.NewConn(s.cluster), + Cluster: s.cluster, + Parent: &Conn{railsProxy: railsproxy.NewConn(s.cluster)}, } - s.db = testdb(c, s.cluster) + s.db = arvadostest.DB(c, s.cluster) } func (s *LDAPSuite) SetUpTest(c *check.C) { - s.ctx, s.rollback = testctx(c, s.db) + tx, err := s.db.Beginx() + c.Assert(err, check.IsNil) + s.ctx = ctrlctx.NewWithTransaction(context.Background(), tx) + s.rollback = tx.Rollback } func (s *LDAPSuite) TearDownTest(c *check.C) { - s.rollback() + if s.rollback != nil { + s.rollback() + } } func (s *LDAPSuite) TestLoginSuccess(c *check.C) {