X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/dc021c3b57dcdebe464c148d55f9990a74e8246b..1d460a17caf94ddc33610b39a0a11aec1d3905a2:/lib/controller/rpc/conn_test.go diff --git a/lib/controller/rpc/conn_test.go b/lib/controller/rpc/conn_test.go index 83a80e878c..cf4dbc4767 100644 --- a/lib/controller/rpc/conn_test.go +++ b/lib/controller/rpc/conn_test.go @@ -24,7 +24,11 @@ func Test(t *testing.T) { var _ = check.Suite(&RPCSuite{}) -const contextKeyTestTokens = "testTokens" +type key int + +const ( + contextKeyTestTokens key = iota +) type RPCSuite struct { log logrus.FieldLogger @@ -51,6 +55,16 @@ func (s *RPCSuite) TestLogin(c *check.C) { 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, @@ -71,10 +85,12 @@ func (s *RPCSuite) TestSpecimenCRUD(c *check.C) { c.Check(sp.Properties["foo"], check.Equals, "bar") spGet, err := s.conn.SpecimenGet(s.ctx, arvados.GetOptions{UUID: sp.UUID}) + c.Check(err, check.IsNil) c.Check(spGet.UUID, check.Equals, sp.UUID) c.Check(spGet.Properties["foo"], check.Equals, "bar") spList, err := s.conn.SpecimenList(s.ctx, arvados.ListOptions{Limit: -1, Filters: []arvados.Filter{{"uuid", "=", sp.UUID}}}) + c.Check(err, check.IsNil) c.Check(spList.ItemsAvailable, check.Equals, 1) c.Assert(spList.Items, check.HasLen, 1) c.Check(spList.Items[0].UUID, check.Equals, sp.UUID) @@ -82,9 +98,11 @@ func (s *RPCSuite) TestSpecimenCRUD(c *check.C) { anonCtx := context.WithValue(context.Background(), contextKeyTestTokens, []string{arvadostest.AnonymousToken}) spList, err = s.conn.SpecimenList(anonCtx, arvados.ListOptions{Limit: -1, Filters: []arvados.Filter{{"uuid", "=", sp.UUID}}}) + c.Check(err, check.IsNil) c.Check(spList.ItemsAvailable, check.Equals, 0) c.Check(spList.Items, check.HasLen, 0) spDel, err := s.conn.SpecimenDelete(s.ctx, arvados.DeleteOptions{UUID: sp.UUID}) + c.Check(err, check.IsNil) c.Check(spDel.UUID, check.Equals, sp.UUID) }