bolt provider: fix error handling for get users with username filter
This commit is contained in:
parent
c1194d558c
commit
0787e3e595
2 changed files with 13 additions and 11 deletions
|
@ -336,9 +336,14 @@ func (p BoltProvider) getUsers(limit int, offset int, order string, username str
|
|||
}
|
||||
if len(username) > 0 {
|
||||
if offset == 0 {
|
||||
user, err := p.userExists(username)
|
||||
var user User
|
||||
user, err = p.userExists(username)
|
||||
if err == nil {
|
||||
users = append(users, HideUserSensitiveData(&user))
|
||||
return users, nil
|
||||
}
|
||||
if _, ok := err.(*RecordNotFoundError); ok {
|
||||
err = nil
|
||||
}
|
||||
}
|
||||
return users, err
|
||||
|
|
|
@ -983,7 +983,7 @@ func TestUserBaseDir(t *testing.T) {
|
|||
providerConf.UsersBaseDir = homeBasePath
|
||||
err := dataprovider.Initialize(providerConf, configDir)
|
||||
if err != nil {
|
||||
t.Errorf("error initializing data provider with users base dir")
|
||||
t.Errorf("error initializing data provider with users base dir: %v", err)
|
||||
}
|
||||
httpd.SetDataProvider(dataprovider.GetProvider())
|
||||
u := getTestUser()
|
||||
|
@ -1014,9 +1014,6 @@ func TestUserBaseDir(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestProviderErrors(t *testing.T) {
|
||||
if providerDriverName == dataprovider.BoltDataProviderName {
|
||||
t.Skip("skipping test provider errors for bolt provider")
|
||||
}
|
||||
dataProvider := dataprovider.GetProvider()
|
||||
dataprovider.Close(dataProvider)
|
||||
_, _, err := httpd.GetUserByID(0, http.StatusInternalServerError)
|
||||
|
@ -1061,7 +1058,7 @@ func TestProviderErrors(t *testing.T) {
|
|||
os.RemoveAll(credentialsPath)
|
||||
err = dataprovider.Initialize(providerConf, configDir)
|
||||
if err != nil {
|
||||
t.Errorf("error initializing data provider")
|
||||
t.Errorf("error initializing data provider: %v", err)
|
||||
}
|
||||
httpd.SetDataProvider(dataprovider.GetProvider())
|
||||
sftpd.SetDataProvider(dataprovider.GetProvider())
|
||||
|
@ -1074,7 +1071,7 @@ func TestDumpdata(t *testing.T) {
|
|||
providerConf := config.GetProviderConf()
|
||||
err := dataprovider.Initialize(providerConf, configDir)
|
||||
if err != nil {
|
||||
t.Errorf("error initializing data provider")
|
||||
t.Errorf("error initializing data provider:_%v", err)
|
||||
}
|
||||
httpd.SetDataProvider(dataprovider.GetProvider())
|
||||
sftpd.SetDataProvider(dataprovider.GetProvider())
|
||||
|
@ -1107,6 +1104,9 @@ func TestDumpdata(t *testing.T) {
|
|||
}
|
||||
os.Chmod(backupsPath, 0755)
|
||||
}
|
||||
dataProvider = dataprovider.GetProvider()
|
||||
dataprovider.Close(dataProvider)
|
||||
config.LoadConfig(configDir, "")
|
||||
providerConf = config.GetProviderConf()
|
||||
providerConf.CredentialsPath = credentialsPath
|
||||
os.RemoveAll(credentialsPath)
|
||||
|
@ -2248,9 +2248,6 @@ func TestWebUserGCSMock(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestProviderClosedMock(t *testing.T) {
|
||||
if providerDriverName == dataprovider.BoltDataProviderName {
|
||||
t.Skip("skipping test provider errors for bolt provider")
|
||||
}
|
||||
dataProvider := dataprovider.GetProvider()
|
||||
dataprovider.Close(dataProvider)
|
||||
req, _ := http.NewRequest(http.MethodGet, webUsersPath, nil)
|
||||
|
@ -2270,7 +2267,7 @@ func TestProviderClosedMock(t *testing.T) {
|
|||
os.RemoveAll(credentialsPath)
|
||||
err := dataprovider.Initialize(providerConf, configDir)
|
||||
if err != nil {
|
||||
t.Errorf("error initializing data provider")
|
||||
t.Errorf("error initializing data provider: %v", err)
|
||||
}
|
||||
httpd.SetDataProvider(dataprovider.GetProvider())
|
||||
sftpd.SetDataProvider(dataprovider.GetProvider())
|
||||
|
|
Loading…
Add table
Reference in a new issue