Этот коммит содержится в:
Ben Schumacher
2024-04-30 16:02:28 +02:00
коммит произвёл GitHub
родитель 0cee332001
Коммит af031b4d0c
4 изменённых файлов: 67 добавлений и 66 удалений

Просмотреть файл

@@ -63,7 +63,9 @@ type Client interface {
GetUser(ctx context.Context, userID, etag string) (*model.User, *model.Response, error) GetUser(ctx context.Context, userID, etag string) (*model.User, *model.Response, error)
GetUserByUsername(ctx context.Context, userName, etag string) (*model.User, *model.Response, error) GetUserByUsername(ctx context.Context, userName, etag string) (*model.User, *model.Response, error)
GetUserByEmail(ctx context.Context, email, etag string) (*model.User, *model.Response, error) GetUserByEmail(ctx context.Context, email, etag string) (*model.User, *model.Response, error)
GetUsersWithCustomQueryParameters(ctx context.Context, page int, perPage int, queryParameters, etag string) ([]*model.User, *model.Response, error) GetUsersByIds(ctx context.Context, userIDs []string) ([]*model.User, *model.Response, error)
GetUsersWithCustomQueryParameters(ctx context.Context, page, perPage int, queryParameters string, etag string) ([]*model.User, *model.Response, error)
GetUsersInTeam(ctx context.Context, teamID string, page, perPage int, etag string) ([]*model.User, *model.Response, error)
PermanentDeleteUser(ctx context.Context, userID string) (*model.Response, error) PermanentDeleteUser(ctx context.Context, userID string) (*model.Response, error)
PermanentDeleteAllUsers(ctx context.Context) (*model.Response, error) PermanentDeleteAllUsers(ctx context.Context) (*model.Response, error)
CreateUser(ctx context.Context, user *model.User) (*model.User, *model.Response, error) CreateUser(ctx context.Context, user *model.User) (*model.User, *model.Response, error)
@@ -97,9 +99,6 @@ type Client interface {
SyncLdap(ctx context.Context, includeRemovedMembers bool) (*model.Response, error) SyncLdap(ctx context.Context, includeRemovedMembers bool) (*model.Response, error)
MigrateIdLdap(ctx context.Context, toAttribute string) (*model.Response, error) MigrateIdLdap(ctx context.Context, toAttribute string) (*model.Response, error)
GetUsers(ctx context.Context, page, perPage int, etag string) ([]*model.User, *model.Response, error) GetUsers(ctx context.Context, page, perPage int, etag string) ([]*model.User, *model.Response, error)
GetUsersWithCustomQueryParameters(ctx context.Context, page, perPage int, queryParameters string, etag string) ([]*model.User, *model.Response, error)
GetUsersByIds(ctx context.Context, userIDs []string) ([]*model.User, *model.Response, error)
GetUsersInTeam(ctx context.Context, teamID string, page, perPage int, etag string) ([]*model.User, *model.Response, error)
UpdateUserActive(ctx context.Context, userID string, activate bool) (*model.Response, error) UpdateUserActive(ctx context.Context, userID string, activate bool) (*model.Response, error)
UpdateTeam(ctx context.Context, team *model.Team) (*model.Team, *model.Response, error) UpdateTeam(ctx context.Context, team *model.Team) (*model.Team, *model.Response, error)
UpdateChannelPrivacy(ctx context.Context, channelID string, privacy model.ChannelType) (*model.Channel, *model.Response, error) UpdateChannelPrivacy(ctx context.Context, channelID string, privacy model.ChannelType) (*model.Channel, *model.Response, error)

Просмотреть файл

@@ -11,8 +11,10 @@ import (
"net/url" "net/url"
"os" "os"
"sort" "sort"
"testing"
"github.com/mattermost/mattermost/server/public/model" "github.com/mattermost/mattermost/server/public/model"
"github.com/stretchr/testify/require"
"github.com/mattermost/mattermost/server/v8/cmd/mmctl/client" "github.com/mattermost/mattermost/server/v8/cmd/mmctl/client"
"github.com/mattermost/mattermost/server/v8/cmd/mmctl/printer" "github.com/mattermost/mattermost/server/v8/cmd/mmctl/printer"
@@ -800,12 +802,12 @@ auth_service: {{.AuthService}}`
return nil return nil
} }
func ResetListUsersCmd() *cobra.Command { func ResetListUsersCmd(t *testing.T) *cobra.Command {
ListUsersCmd.Flags().Set("page", "0") require.NoError(t, ListUsersCmd.Flags().Set("page", "0"))
ListUsersCmd.Flags().Set("per-page", "200") require.NoError(t, ListUsersCmd.Flags().Set("per-page", "200"))
ListUsersCmd.Flags().Set("all", "false") require.NoError(t, ListUsersCmd.Flags().Set("all", "false"))
ListUsersCmd.Flags().Set("team", "") require.NoError(t, ListUsersCmd.Flags().Set("team", ""))
ListUsersCmd.Flags().Set("inactive", "false") require.NoError(t, ListUsersCmd.Flags().Set("inactive", "false"))
return ListUsersCmd return ListUsersCmd
} }

Просмотреть файл

@@ -182,8 +182,8 @@ func (s *MmctlE2ETestSuite) TestListUserCmd() {
s.RunForAllClients("Get some random user", func(c client.Client) { s.RunForAllClients("Get some random user", func(c client.Client) {
printer.Clean() printer.Clean()
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("per-page", "5") s.Require().NoError(cmd.Flags().Set("per-page", "5"))
err := listUsersCmdF(c, cmd, []string{}) err := listUsersCmdF(c, cmd, []string{})
s.Require().Nil(err) s.Require().Nil(err)
@@ -199,9 +199,9 @@ func (s *MmctlE2ETestSuite) TestListUserCmd() {
s.RunForAllClients("Get list of all user", func(c client.Client) { s.RunForAllClients("Get list of all user", func(c client.Client) {
printer.Clean() printer.Clean()
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("per-page", "12") s.Require().NoError(cmd.Flags().Set("per-page", "12"))
cmd.Flags().Set("all", "true") s.Require().NoError(cmd.Flags().Set("all", "true"))
err := listUsersCmdF(c, cmd, []string{}) err := listUsersCmdF(c, cmd, []string{})
s.Require().Nil(err) s.Require().Nil(err)
@@ -216,10 +216,10 @@ func (s *MmctlE2ETestSuite) TestListUserCmd() {
s.RunForAllClients("Get list of inactive users", func(c client.Client) { s.RunForAllClients("Get list of inactive users", func(c client.Client) {
printer.Clean() printer.Clean()
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("per-page", "12") s.Require().NoError(cmd.Flags().Set("per-page", "12"))
cmd.Flags().Set("all", "true") s.Require().NoError(cmd.Flags().Set("all", "true"))
cmd.Flags().Set("inactive", "true") s.Require().NoError(cmd.Flags().Set("inactive", "true"))
err := listUsersCmdF(c, cmd, []string{}) err := listUsersCmdF(c, cmd, []string{})
s.Require().Nil(err) s.Require().Nil(err)
@@ -247,10 +247,10 @@ func (s *MmctlE2ETestSuite) TestListUserCmd() {
s.RunForAllClients("Get list users given team", func(c client.Client) { s.RunForAllClients("Get list users given team", func(c client.Client) {
printer.Clean() printer.Clean()
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("per-page", "40") s.Require().NoError(cmd.Flags().Set("per-page", "40"))
cmd.Flags().Set("all", "true") s.Require().NoError(cmd.Flags().Set("all", "true"))
cmd.Flags().Set("team", s.th.BasicTeam.Name) s.Require().NoError(cmd.Flags().Set("team", s.th.BasicTeam.Name))
err := listUsersCmdF(c, cmd, []string{}) err := listUsersCmdF(c, cmd, []string{})
s.Require().Nil(err) s.Require().Nil(err)
@@ -281,11 +281,11 @@ func (s *MmctlE2ETestSuite) TestListUserCmd() {
s.RunForAllClients("Get list of inactive users given team", func(c client.Client) { s.RunForAllClients("Get list of inactive users given team", func(c client.Client) {
printer.Clean() printer.Clean()
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("per-page", "40") s.Require().NoError(cmd.Flags().Set("per-page", "40"))
cmd.Flags().Set("all", "true") s.Require().NoError(cmd.Flags().Set("all", "true"))
cmd.Flags().Set("team", s.th.BasicTeam.Name) s.Require().NoError(cmd.Flags().Set("team", s.th.BasicTeam.Name))
cmd.Flags().Set("inactive", "true") s.Require().NoError(cmd.Flags().Set("inactive", "true"))
err := listUsersCmdF(c, cmd, []string{}) err := listUsersCmdF(c, cmd, []string{})
s.Require().Nil(err) s.Require().Nil(err)

Просмотреть файл

@@ -1871,8 +1871,8 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
email := "example@example.com" email := "example@example.com"
mockUser := model.User{Username: "ExampleUser", Email: email} mockUser := model.User{Username: "ExampleUser", Email: email}
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
s.client. s.client.
EXPECT(). EXPECT().
@@ -1894,9 +1894,9 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
email2 := "example2@example.com" email2 := "example2@example.com"
mockUser2 := model.User{Username: "ExampleUser2", Email: email2} mockUser2 := model.User{Username: "ExampleUser2", Email: email2}
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
cmd.Flags().Set("all", "true") s.Require().NoError(cmd.Flags().Set("all", "true"))
s.client. s.client.
EXPECT(). EXPECT().
@@ -1931,9 +1931,9 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
email2 := "example2@example.com" email2 := "example2@example.com"
mockUser2 := model.User{Username: "ExampleUser2", Email: email2, DeleteAt: model.GetMillis()} mockUser2 := model.User{Username: "ExampleUser2", Email: email2, DeleteAt: model.GetMillis()}
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
cmd.Flags().Set("all", "true") s.Require().NoError(cmd.Flags().Set("all", "true"))
s.client. s.client.
EXPECT(). EXPECT().
@@ -1968,10 +1968,10 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
email3 := "example3@example.com" email3 := "example3@example.com"
mockUser3 := model.User{Username: "ExampleUser3", Email: email3, DeleteAt: model.GetMillis()} mockUser3 := model.User{Username: "ExampleUser3", Email: email3, DeleteAt: model.GetMillis()}
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
cmd.Flags().Set("all", "true") s.Require().NoError(cmd.Flags().Set("all", "true"))
cmd.Flags().Set("inactive", "true") s.Require().NoError(cmd.Flags().Set("inactive", "true"))
s.client. s.client.
EXPECT(). EXPECT().
@@ -2006,10 +2006,10 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
email1 := "del1@example.com" email1 := "del1@example.com"
mockUser1 := model.User{Username: "ExampleUser1", Email: email1, DeleteAt: model.GetMillis()} mockUser1 := model.User{Username: "ExampleUser1", Email: email1, DeleteAt: model.GetMillis()}
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("page", "1") s.Require().NoError(cmd.Flags().Set("page", "1"))
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
cmd.Flags().Set("inactive", "true") s.Require().NoError(cmd.Flags().Set("inactive", "true"))
s.client. s.client.
EXPECT(). EXPECT().
@@ -2026,9 +2026,9 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
s.Run("Try to list all the users when there are no uses in store", func() { s.Run("Try to list all the users when there are no uses in store", func() {
printer.Clean() printer.Clean()
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("page", "0") s.Require().NoError(cmd.Flags().Set("page", "0"))
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
s.client. s.client.
EXPECT(). EXPECT().
@@ -2044,9 +2044,9 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
s.Run("Return an error from GetUsersWithCustomQueryParameters call and verify that error is properly returned", func() { s.Run("Return an error from GetUsersWithCustomQueryParameters call and verify that error is properly returned", func() {
printer.Clean() printer.Clean()
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("page", "0") s.Require().NoError(cmd.Flags().Set("page", "0"))
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
mockError := errors.New("mock error") mockError := errors.New("mock error")
mockErrorW := errors.Wrap(mockError, "Failed to fetch users") mockErrorW := errors.Wrap(mockError, "Failed to fetch users")
@@ -2068,9 +2068,9 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
email := "example@example.com" email := "example@example.com"
mockUser := model.User{Username: "ExampleUser", Email: email} mockUser := model.User{Username: "ExampleUser", Email: email}
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("page", "2") s.Require().NoError(cmd.Flags().Set("page", "2"))
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
s.client. s.client.
EXPECT(). EXPECT().
@@ -2093,10 +2093,10 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
resultID := "teamId" resultID := "teamId"
team := "teamName" team := "teamName"
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("page", "0") s.Require().NoError(cmd.Flags().Set("page", "0"))
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
cmd.Flags().Set("team", team) s.Require().NoError(cmd.Flags().Set("team", team))
s.client. s.client.
EXPECT(). EXPECT().
@@ -2127,10 +2127,10 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
resultID := "teamId" resultID := "teamId"
team := "teamName" team := "teamName"
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("page", "0") s.Require().NoError(cmd.Flags().Set("page", "0"))
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
cmd.Flags().Set("team", team) s.Require().NoError(cmd.Flags().Set("team", team))
s.client. s.client.
EXPECT(). EXPECT().
@@ -2163,11 +2163,11 @@ func (s *MmctlUnitTestSuite) TestListUserCmdF() {
resultID := "teamId" resultID := "teamId"
team := "teamName" team := "teamName"
cmd := ResetListUsersCmd() cmd := ResetListUsersCmd(s.T())
cmd.Flags().Set("page", "0") s.Require().NoError(cmd.Flags().Set("page", "0"))
cmd.Flags().Set("per-page", "1") s.Require().NoError(cmd.Flags().Set("per-page", "1"))
cmd.Flags().Set("team", team) s.Require().NoError(cmd.Flags().Set("team", team))
cmd.Flags().Set("all", "true") s.Require().NoError(cmd.Flags().Set("all", "true"))
s.client. s.client.
EXPECT(). EXPECT().