From ea74613444c65e965a76a6ad7640f6c011c2c69b Mon Sep 17 00:00:00 2001 From: Joram Wilander Date: Sat, 25 Mar 2017 02:38:24 -0400 Subject: Implement some team endpoints for APIv4 (#5870) * Implement GET /users/{user_id}/teams/members endpoint for APIv4 * Implement DELETE /teams/{team_id}/members/{user_id} endpoint for APIv4 --- api4/team_test.go | 69 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) (limited to 'api4/team_test.go') diff --git a/api4/team_test.go b/api4/team_test.go index 1f1e031b3..36d6df147 100644 --- a/api4/team_test.go +++ b/api4/team_test.go @@ -534,6 +534,44 @@ func TestGetTeamMembers(t *testing.T) { CheckNoError(t, resp) } +func TestGetTeamMembersForUser(t *testing.T) { + th := Setup().InitBasic().InitSystemAdmin() + defer TearDown() + Client := th.Client + + members, resp := Client.GetTeamMembersForUser(th.BasicUser.Id, "") + CheckNoError(t, resp) + + found := false + for _, m := range members { + if m.TeamId == th.BasicTeam.Id { + found = true + } + } + + if !found { + t.Fatal("missing team member") + } + + _, resp = Client.GetTeamMembersForUser("junk", "") + CheckBadRequestStatus(t, resp) + + _, resp = Client.GetTeamMembersForUser(model.NewId(), "") + CheckForbiddenStatus(t, resp) + + Client.Logout() + _, resp = Client.GetTeamMembersForUser(th.BasicUser.Id, "") + CheckUnauthorizedStatus(t, resp) + + user := th.CreateUser() + Client.Login(user.Email, user.Password) + _, resp = Client.GetTeamMembersForUser(th.BasicUser.Id, "") + CheckForbiddenStatus(t, resp) + + _, resp = th.SystemAdminClient.GetTeamMembersForUser(th.BasicUser.Id, "") + CheckNoError(t, resp) +} + func TestGetTeamMembersByIds(t *testing.T) { th := Setup().InitBasic() defer TearDown() @@ -706,6 +744,37 @@ func TestAddTeamMember(t *testing.T) { CheckNotFoundStatus(t, resp) } +func TestRemoveTeamMember(t *testing.T) { + th := Setup().InitBasic().InitSystemAdmin() + defer TearDown() + Client := th.Client + + pass, resp := Client.RemoveTeamMember(th.BasicTeam.Id, th.BasicUser.Id) + CheckNoError(t, resp) + + if !pass { + t.Fatal("should have passed") + } + + _, resp = th.SystemAdminClient.AddTeamMember(th.BasicTeam.Id, th.BasicUser.Id, "", "", "") + CheckNoError(t, resp) + + _, resp = Client.RemoveTeamMember(th.BasicTeam.Id, "junk") + CheckBadRequestStatus(t, resp) + + _, resp = Client.RemoveTeamMember("junk", th.BasicUser2.Id) + CheckBadRequestStatus(t, resp) + + _, resp = Client.RemoveTeamMember(th.BasicTeam.Id, th.BasicUser2.Id) + CheckForbiddenStatus(t, resp) + + _, resp = Client.RemoveTeamMember(model.NewId(), th.BasicUser.Id) + CheckNotFoundStatus(t, resp) + + _, resp = th.SystemAdminClient.RemoveTeamMember(th.BasicTeam.Id, th.BasicUser.Id) + CheckNoError(t, resp) +} + func TestGetTeamStats(t *testing.T) { th := Setup().InitBasic().InitSystemAdmin() defer TearDown() -- cgit v1.2.3-1-g7c22