Migrate UserAccessToken.Search to Sync by default (#11330)

Этот коммит содержится в:
Shobhit Gupta
2019-06-24 07:12:23 -07:00
коммит произвёл Jesús Espino
родитель cca41427a4
Коммит 331ded2421
5 изменённых файлов: 41 добавлений и 36 удалений

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

@@ -392,14 +392,12 @@ func (a *App) GetUserAccessToken(tokenId string, sanitize bool) (*model.UserAcce
}
func (a *App) SearchUserAccessTokens(term string) ([]*model.UserAccessToken, *model.AppError) {
result := <-a.Srv.Store.UserAccessToken().Search(term)
if result.Err != nil {
return nil, result.Err
tokens, err := a.Srv.Store.UserAccessToken().Search(term)
if err != nil {
return nil, err
}
tokens := result.Data.([]*model.UserAccessToken)
for _, token := range tokens {
token.Token = ""
}
return tokens, nil
}

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

@@ -192,24 +192,22 @@ func (s SqlUserAccessTokenStore) GetByUser(userId string, offset, limit int) ([]
return tokens, nil
}
func (s SqlUserAccessTokenStore) Search(term string) store.StoreChannel {
return store.Do(func(result *store.StoreResult) {
tokens := []*model.UserAccessToken{}
params := map[string]interface{}{"Term": term + "%"}
query := `
SELECT
uat.*
FROM UserAccessTokens uat
INNER JOIN Users u
ON uat.UserId = u.Id
WHERE uat.Id LIKE :Term OR uat.UserId LIKE :Term OR u.Username LIKE :Term`
func (s SqlUserAccessTokenStore) Search(term string) ([]*model.UserAccessToken, *model.AppError) {
tokens := []*model.UserAccessToken{}
params := map[string]interface{}{"Term": term + "%"}
query := `
SELECT
uat.*
FROM UserAccessTokens uat
INNER JOIN Users u
ON uat.UserId = u.Id
WHERE uat.Id LIKE :Term OR uat.UserId LIKE :Term OR u.Username LIKE :Term`
if _, err := s.GetReplica().Select(&tokens, query, params); err != nil {
result.Err = model.NewAppError("SqlUserAccessTokenStore.Search", "store.sql_user_access_token.search.app_error", nil, "term="+term+", "+err.Error(), http.StatusInternalServerError)
}
if _, err := s.GetReplica().Select(&tokens, query, params); err != nil {
return nil, model.NewAppError("SqlUserAccessTokenStore.Search", "store.sql_user_access_token.search.app_error", nil, "term="+term+", "+err.Error(), http.StatusInternalServerError)
}
result.Data = tokens
})
return tokens, nil
}
func (s SqlUserAccessTokenStore) UpdateTokenEnable(tokenId string) store.StoreChannel {

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

@@ -524,7 +524,7 @@ type UserAccessTokenStore interface {
GetAll(offset int, limit int) ([]*model.UserAccessToken, *model.AppError)
GetByToken(tokenString string) (*model.UserAccessToken, *model.AppError)
GetByUser(userId string, page, perPage int) ([]*model.UserAccessToken, *model.AppError)
Search(term string) StoreChannel
Search(term string) ([]*model.UserAccessToken, *model.AppError)
UpdateTokenEnable(tokenId string) StoreChannel
UpdateTokenDisable(tokenId string) *model.AppError
}

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

@@ -171,19 +171,28 @@ func (_m *UserAccessTokenStore) Save(token *model.UserAccessToken) (*model.UserA
}
// Search provides a mock function with given fields: term
func (_m *UserAccessTokenStore) Search(term string) store.StoreChannel {
func (_m *UserAccessTokenStore) Search(term string) ([]*model.UserAccessToken, *model.AppError) {
ret := _m.Called(term)
var r0 store.StoreChannel
if rf, ok := ret.Get(0).(func(string) store.StoreChannel); ok {
var r0 []*model.UserAccessToken
if rf, ok := ret.Get(0).(func(string) []*model.UserAccessToken); ok {
r0 = rf(term)
} else {
if ret.Get(0) != nil {
r0 = ret.Get(0).(store.StoreChannel)
r0 = ret.Get(0).([]*model.UserAccessToken)
}
}
return r0
var r1 *model.AppError
if rf, ok := ret.Get(1).(func(string) *model.AppError); ok {
r1 = rf(term)
} else {
if ret.Get(1) != nil {
r1 = ret.Get(1).(*model.AppError)
}
}
return r0, r1
}
// UpdateTokenDisable provides a mock function with given fields: tokenId

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

@@ -161,21 +161,21 @@ func testUserAccessTokenSearch(t *testing.T, ss store.Store) {
t.Fatal(err)
}
if result := <-ss.UserAccessToken().Search(uat.Id); result.Err != nil {
t.Fatal(result.Err)
} else if received := result.Data.([]*model.UserAccessToken); len(received) != 1 {
if received, err := ss.UserAccessToken().Search(uat.Id); err != nil {
t.Fatal(err)
} else if len(received) != 1 {
t.Fatal("received incorrect number of tokens after search")
}
if result := <-ss.UserAccessToken().Search(uat.UserId); result.Err != nil {
t.Fatal(result.Err)
} else if received := result.Data.([]*model.UserAccessToken); len(received) != 1 {
if received, err := ss.UserAccessToken().Search(uat.UserId); err != nil {
t.Fatal(err)
} else if len(received) != 1 {
t.Fatal("received incorrect number of tokens after search")
}
if result := <-ss.UserAccessToken().Search(u1.Username); result.Err != nil {
t.Fatal(result.Err)
} else if received := result.Data.([]*model.UserAccessToken); len(received) != 1 {
if received, err := ss.UserAccessToken().Search(u1.Username); err != nil {
t.Fatal(err)
} else if len(received) != 1 {
t.Fatal("received incorrect number of tokens after search")
}
}