MM-60987: Move message_export code to monorepo (#28674)
* move message_export code to monorepo * update license headers * moving over `dedicated filestore` (#1772) from enterprise master
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
1d04a2292d
Коммит
b8e462e198
79
server/enterprise/message_export/membership_map_test.go
Обычный файл
79
server/enterprise/message_export/membership_map_test.go
Обычный файл
@@ -0,0 +1,79 @@
|
||||
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
||||
// See LICENSE.enterprise for license information.
|
||||
|
||||
package message_export
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
|
||||
"github.com/mattermost/mattermost/server/public/model"
|
||||
)
|
||||
|
||||
func TestMembershipMap(t *testing.T) {
|
||||
membershipMap := make(MembershipMap)
|
||||
|
||||
channelId := model.NewId()
|
||||
|
||||
user1 := &MembershipMapUser{
|
||||
email: model.NewId() + "@mattermost.com",
|
||||
username: model.NewId(),
|
||||
userId: model.NewId(),
|
||||
}
|
||||
user2 := &MembershipMapUser{
|
||||
email: model.NewId() + "@mattermost.com",
|
||||
username: model.NewId(),
|
||||
userId: model.NewId(),
|
||||
}
|
||||
|
||||
assert.False(t, membershipMap.IsUserInChannel(channelId, user1.email))
|
||||
membershipMap.AddUserToChannel(channelId, *user1)
|
||||
assert.True(t, membershipMap.IsUserInChannel(channelId, user1.email))
|
||||
|
||||
assert.False(t, membershipMap.IsUserInChannel(channelId, user2.email))
|
||||
membershipMap.AddUserToChannel(channelId, *user2)
|
||||
assert.True(t, membershipMap.IsUserInChannel(channelId, user2.email))
|
||||
|
||||
// ensure that the correct user emails are returned
|
||||
emails := membershipMap.GetUserEmailsInChannel(channelId)
|
||||
assert.Len(t, emails, 2)
|
||||
assert.Contains(t, emails, user1.email)
|
||||
assert.Contains(t, emails, user2.email)
|
||||
|
||||
// ensure that the correct user objects are returned
|
||||
users := membershipMap.GetUsersInChannel(channelId)
|
||||
assert.Len(t, users, 2)
|
||||
if users[0].userId == user1.userId {
|
||||
assert.Equal(t, user1.username, users[0].username)
|
||||
assert.Equal(t, user1.email, users[0].email)
|
||||
assert.Equal(t, user2.userId, users[1].userId)
|
||||
assert.Equal(t, user2.username, users[1].username)
|
||||
assert.Equal(t, user2.email, users[1].email)
|
||||
} else if users[0].userId == user2.userId {
|
||||
assert.Equal(t, user2.username, users[0].username)
|
||||
assert.Equal(t, user2.email, users[0].email)
|
||||
assert.Equal(t, user1.userId, users[1].userId)
|
||||
assert.Equal(t, user1.username, users[1].username)
|
||||
assert.Equal(t, user1.email, users[1].email)
|
||||
} else {
|
||||
assert.Fail(t, "First returned user is not recognized")
|
||||
}
|
||||
|
||||
// remove user1 from the channel
|
||||
membershipMap.RemoveUserFromChannel(channelId, user1.email)
|
||||
assert.False(t, membershipMap.IsUserInChannel(channelId, user1.email))
|
||||
assert.True(t, membershipMap.IsUserInChannel(channelId, user2.email))
|
||||
|
||||
// ensure that user2's email is returned
|
||||
emails = membershipMap.GetUserEmailsInChannel(channelId)
|
||||
assert.Len(t, emails, 1)
|
||||
assert.Contains(t, emails, user2.email)
|
||||
|
||||
// ensure that only user2 is returned
|
||||
users = membershipMap.GetUsersInChannel(channelId)
|
||||
assert.Len(t, users, 1)
|
||||
assert.Equal(t, user2.userId, users[0].userId)
|
||||
assert.Equal(t, user2.username, users[0].username)
|
||||
assert.Equal(t, user2.email, users[0].email)
|
||||
}
|
||||
Ссылка в новой задаче
Block a user