Skip to content

Commit

Permalink
[automate-2876] Update automate-deployment to teams v2 client (#2877)
Browse files Browse the repository at this point in the history
  • Loading branch information
msorens authored Feb 25, 2020
1 parent d434ec6 commit 079ed43
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 29 deletions.
12 changes: 6 additions & 6 deletions components/automate-deployment/pkg/usermgmt/client/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ import (
"google.golang.org/grpc/status"

"github.com/chef/automate/api/interservice/local_user"
teams "github.com/chef/automate/api/interservice/teams/v1"
teams "github.com/chef/automate/api/interservice/teams/v2"
"github.com/chef/automate/components/automate-deployment/pkg/usermgmt"
teams_storage "github.com/chef/automate/components/teams-service/storage"
"github.com/chef/automate/lib/grpc/secureconn"
)

type userMgmtClient struct {
teamsClient teams.TeamsV1Client
teamsClient teams.TeamsV2Client
localUsersClient local_user.UsersMgmtClient
}

Expand Down Expand Up @@ -44,7 +44,7 @@ func NewUserMgmtClient(ctx context.Context, factory *secureconn.Factory,
if err != nil {
return nil, err
}
teamsClient := teams.NewTeamsV1Client(teamsConnection)
teamsClient := teams.NewTeamsV2Client(teamsConnection)

return &userMgmtClient{
teamsClient: teamsClient,
Expand Down Expand Up @@ -78,15 +78,15 @@ func (u *userMgmtClient) CreateUser(ctx context.Context,
}

func (u *userMgmtClient) AddUserToAdminTeam(ctx context.Context, userID string) error {
adminsTeam, err := u.teamsClient.GetTeamByName(ctx,
adminsTeam, err := u.teamsClient.GetTeam(ctx,
// (tc) By convention, this is the admins team name string and will properly be
// updated here should that change in teams-service.
&teams.GetTeamByNameReq{Name: teams_storage.AdminsTeamName})
&teams.GetTeamReq{Id: teams_storage.AdminsTeamName})
if err != nil {
return err
}

_, err = u.teamsClient.AddUsers(ctx, &teams.AddUsersReq{
_, err = u.teamsClient.AddTeamMembers(ctx, &teams.AddTeamMembersReq{
Id: adminsTeam.Team.Id,
UserIds: []string{userID},
})
Expand Down
41 changes: 18 additions & 23 deletions components/automate-deployment/pkg/usermgmt/client/client_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import (
"google.golang.org/grpc/status"

local_users_api "github.com/chef/automate/api/interservice/local_user"
teams_api "github.com/chef/automate/api/interservice/teams/v1"
teams_api "github.com/chef/automate/api/interservice/teams/v2"
"github.com/chef/automate/lib/grpc/grpctest"
"github.com/chef/automate/lib/grpc/secureconn"
"github.com/chef/automate/lib/tls/test/helpers"
Expand All @@ -24,10 +24,10 @@ func TestUserMgmtClient(t *testing.T) {
// https://github.com/chef/automate/blob/master/components/automate-grpc/protoc-gen-grpc-mock/README.md
serviceCerts := helpers.LoadDevCerts(t, "teams-service")

mockTeams := teams_api.NewTeamsV1ServerMock()
mockTeams := teams_api.NewTeamsV2ServerMock()
connFactory := secureconn.NewFactory(*serviceCerts)
g := connFactory.NewServer()
teams_api.RegisterTeamsV1Server(g, mockTeams)
teams_api.RegisterTeamsV2Server(g, mockTeams)
teams := grpctest.NewServer(g)
defer teams.Close()

Expand Down Expand Up @@ -156,10 +156,10 @@ func TestUserMgmtClient(t *testing.T) {
userID := "a7cd7698-6c8a-4720-970e-5d8315caa92c"

t.Run("when the admins team can't be retrieved it returns the original error", func(t *testing.T) {
mockTeams.GetTeamByNameFunc = func(
_ context.Context, req *teams_api.GetTeamByNameReq) (*teams_api.GetTeamByNameResp, error) {
mockTeams.GetTeamFunc = func(
_ context.Context, req *teams_api.GetTeamReq) (*teams_api.GetTeamResp, error) {

assert.Equal(t, req.Name, "admins")
assert.Equal(t, req.Id, "admins")
return nil, status.Error(codes.Internal, "unexpected error")
}

Expand All @@ -169,32 +169,27 @@ func TestUserMgmtClient(t *testing.T) {
})

t.Run("when the admins team is properly retrieved", func(t *testing.T) {
mockTeams.GetTeamByNameFunc = func(
_ context.Context, req *teams_api.GetTeamByNameReq) (*teams_api.GetTeamByNameResp, error) {
mockTeams.GetTeamFunc = func(
_ context.Context, req *teams_api.GetTeamReq) (*teams_api.GetTeamResp, error) {

assert.Equal(t, req.Name, "admins")
return &teams_api.GetTeamByNameResp{
assert.Equal(t, req.Id, "admins")
return &teams_api.GetTeamResp{
Team: &teams_api.Team{
Id: teamID,
Name: "admins",
Description: "don't care",
Id: teamID,
Name: "admins",
},
}, nil
}

t.Run("when add users succeeds it returns nil", func(t *testing.T) {
mockTeams.AddUsersFunc = func(
_ context.Context, req *teams_api.AddUsersReq) (*teams_api.AddUsersResp, error) {
mockTeams.AddTeamMembersFunc = func(
_ context.Context, req *teams_api.AddTeamMembersReq) (*teams_api.AddTeamMembersResp, error) {

assert.Equal(t, req.Id, teamID)
assert.Equal(t, req.UserIds, []string{userID})

return &teams_api.AddUsersResp{
Team: &teams_api.Team{
Id: teamID,
Name: "admins",
Description: "don't care",
},
return &teams_api.AddTeamMembersResp{
UserIds: []string{userID},
}, nil
}

Expand All @@ -203,8 +198,8 @@ func TestUserMgmtClient(t *testing.T) {
})

t.Run("when add users fails it returns the original error", func(t *testing.T) {
mockTeams.AddUsersFunc = func(
_ context.Context, req *teams_api.AddUsersReq) (*teams_api.AddUsersResp, error) {
mockTeams.AddTeamMembersFunc = func(
_ context.Context, req *teams_api.AddTeamMembersReq) (*teams_api.AddTeamMembersResp, error) {

assert.Equal(t, req.Id, teamID)
assert.Equal(t, req.UserIds, []string{userID})
Expand Down

0 comments on commit 079ed43

Please sign in to comment.