X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/678f1f53466c3f2133f63a6e6ad553f5e5d14804..e470a947218ecf042ca75c69d4579a052199e570:/lib/controller/rpc/conn_test.go diff --git a/lib/controller/rpc/conn_test.go b/lib/controller/rpc/conn_test.go index 80e90a043f..b97c0f87b8 100644 --- a/lib/controller/rpc/conn_test.go +++ b/lib/controller/rpc/conn_test.go @@ -10,9 +10,9 @@ import ( "os" "testing" - "git.curoverse.com/arvados.git/sdk/go/arvados" - "git.curoverse.com/arvados.git/sdk/go/arvadostest" - "git.curoverse.com/arvados.git/sdk/go/ctxlog" + "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/sirupsen/logrus" check "gopkg.in/check.v1" ) @@ -36,10 +36,31 @@ func (s *RPCSuite) SetUpTest(c *check.C) { ctx := ctxlog.Context(context.Background(), ctxlog.TestLogger(c)) s.ctx = context.WithValue(ctx, contextKeyTestTokens, []string{arvadostest.ActiveToken}) s.conn = NewConn("zzzzz", &url.URL{Scheme: "https", Host: os.Getenv("ARVADOS_TEST_API_HOST")}, true, func(ctx context.Context) ([]string, error) { - return ctx.Value(contextKeyTestTokens).([]string), nil + tokens, _ := ctx.Value(contextKeyTestTokens).([]string) + return tokens, nil }) } +func (s *RPCSuite) TestLogin(c *check.C) { + s.ctx = context.Background() + opts := arvados.LoginOptions{ + ReturnTo: "https://foo.example.com/bar", + } + resp, err := s.conn.Login(s.ctx, opts) + c.Check(err, check.IsNil) + c.Check(resp.RedirectLocation, check.Equals, "/auth/joshid?return_to="+url.QueryEscape(","+opts.ReturnTo)) +} + +func (s *RPCSuite) TestLogout(c *check.C) { + s.ctx = context.Background() + opts := arvados.LogoutOptions{ + ReturnTo: "https://foo.example.com/bar", + } + resp, err := s.conn.Logout(s.ctx, opts) + c.Check(err, check.IsNil) + c.Check(resp.RedirectLocation, check.Equals, "http://localhost:3002/users/sign_out?redirect_uri="+url.QueryEscape(opts.ReturnTo)) +} + func (s *RPCSuite) TestCollectionCreate(c *check.C) { coll, err := s.conn.CollectionCreate(s.ctx, arvados.CreateOptions{Attrs: map[string]interface{}{ "owner_uuid": arvadostest.ActiveUserUUID,