ES now supports inactive users filtering (#14463)
* ES now supports inactive users filtering
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
22aff2af4a
Коммит
0a96ed04a3
@@ -94,7 +94,7 @@ var searchUserStoreTests = []searchTest{
|
|||||||
{
|
{
|
||||||
Name: "Should be able to search inactive users",
|
Name: "Should be able to search inactive users",
|
||||||
Fn: testShouldBeAbleToSearchInactiveUsers,
|
Fn: testShouldBeAbleToSearchInactiveUsers,
|
||||||
Tags: []string{ENGINE_POSTGRES, ENGINE_MYSQL},
|
Tags: []string{ENGINE_MYSQL, ENGINE_POSTGRES, ENGINE_ELASTICSEARCH},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Name: "Should be able to search filtering by role",
|
Name: "Should be able to search filtering by role",
|
||||||
@@ -543,7 +543,7 @@ func testShouldEscapeUnderscoreCharacter(t *testing.T, th *SearchTestHelper) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func testShouldBeAbleToSearchInactiveUsers(t *testing.T, th *SearchTestHelper) {
|
func testShouldBeAbleToSearchInactiveUsers(t *testing.T, th *SearchTestHelper) {
|
||||||
userAlternate, err := th.createUser("alternate-username", "alternatenickname", "firstname", "altlastname")
|
userAlternate, err := th.createUser("basicusernamealternate", "alternatenickname", "firstname", "altlastname")
|
||||||
require.Nil(t, err)
|
require.Nil(t, err)
|
||||||
userAlternate.DeleteAt = model.GetMillis()
|
userAlternate.DeleteAt = model.GetMillis()
|
||||||
_, apperr := th.Store.User().Update(userAlternate, true)
|
_, apperr := th.Store.User().Update(userAlternate, true)
|
||||||
@@ -554,32 +554,33 @@ func testShouldBeAbleToSearchInactiveUsers(t *testing.T, th *SearchTestHelper) {
|
|||||||
_, err = th.addUserToChannels(userAlternate, []string{th.ChannelBasic.Id})
|
_, err = th.addUserToChannels(userAlternate, []string{th.ChannelBasic.Id})
|
||||||
require.Nil(t, err)
|
require.Nil(t, err)
|
||||||
options := &model.UserSearchOptions{
|
options := &model.UserSearchOptions{
|
||||||
AllowInactive: true,
|
Limit: model.USER_SEARCH_DEFAULT_LIMIT,
|
||||||
Limit: model.USER_SEARCH_DEFAULT_LIMIT,
|
|
||||||
}
|
}
|
||||||
t.Run("Should autocomplete inactive users if we allow it", func(t *testing.T) {
|
t.Run("Should autocomplete inactive users if we allow it", func(t *testing.T) {
|
||||||
users, apperr := th.Store.User().AutocompleteUsersInChannel(th.Team.Id, th.ChannelBasic.Id, "alternate-username", options)
|
options.AllowInactive = true
|
||||||
|
users, apperr := th.Store.User().AutocompleteUsersInChannel(th.Team.Id, th.ChannelBasic.Id, "basicusername", options)
|
||||||
require.Nil(t, apperr)
|
require.Nil(t, apperr)
|
||||||
th.assertUsersMatchInAnyOrder(t, []*model.User{userAlternate}, users.InChannel)
|
th.assertUsersMatchInAnyOrder(t, []*model.User{th.User, userAlternate}, users.InChannel)
|
||||||
th.assertUsersMatchInAnyOrder(t, []*model.User{}, users.OutOfChannel)
|
th.assertUsersMatchInAnyOrder(t, []*model.User{th.User2}, users.OutOfChannel)
|
||||||
})
|
})
|
||||||
t.Run("Should search inactive users if we allow it", func(t *testing.T) {
|
t.Run("Should search inactive users if we allow it", func(t *testing.T) {
|
||||||
users, apperr := th.Store.User().Search(th.Team.Id, "alternate-username", options)
|
options.AllowInactive = true
|
||||||
|
users, apperr := th.Store.User().Search(th.Team.Id, "basicusername", options)
|
||||||
require.Nil(t, apperr)
|
require.Nil(t, apperr)
|
||||||
th.assertUsersMatchInAnyOrder(t, []*model.User{userAlternate}, users)
|
th.assertUsersMatchInAnyOrder(t, []*model.User{th.User, th.User2, userAlternate}, users)
|
||||||
})
|
})
|
||||||
t.Run("Shouldn't autocomplete inactive users if we don't allow it", func(t *testing.T) {
|
t.Run("Shouldn't autocomplete inactive users if we don't allow it", func(t *testing.T) {
|
||||||
options.AllowInactive = false
|
options.AllowInactive = false
|
||||||
users, apperr := th.Store.User().AutocompleteUsersInChannel(th.Team.Id, th.ChannelBasic.Id, "alternate-username", options)
|
users, apperr := th.Store.User().AutocompleteUsersInChannel(th.Team.Id, th.ChannelBasic.Id, "basicusername", options)
|
||||||
require.Nil(t, apperr)
|
require.Nil(t, apperr)
|
||||||
th.assertUsersMatchInAnyOrder(t, []*model.User{}, users.InChannel)
|
th.assertUsersMatchInAnyOrder(t, []*model.User{th.User}, users.InChannel)
|
||||||
th.assertUsersMatchInAnyOrder(t, []*model.User{}, users.OutOfChannel)
|
th.assertUsersMatchInAnyOrder(t, []*model.User{th.User2}, users.OutOfChannel)
|
||||||
})
|
})
|
||||||
t.Run("Shouldn't search inactive users if we don't allow it", func(t *testing.T) {
|
t.Run("Shouldn't search inactive users if we don't allow it", func(t *testing.T) {
|
||||||
options.AllowInactive = false
|
options.AllowInactive = false
|
||||||
users, apperr := th.Store.User().Search(th.Team.Id, "alternate-username", options)
|
users, apperr := th.Store.User().Search(th.Team.Id, "basicusername", options)
|
||||||
require.Nil(t, apperr)
|
require.Nil(t, apperr)
|
||||||
th.assertUsersMatchInAnyOrder(t, []*model.User{}, users)
|
th.assertUsersMatchInAnyOrder(t, []*model.User{th.User, th.User2}, users)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user