mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-02-22 11:25:47 -05:00
Order the user's organization list alphabetically
This commit is contained in:
parent
d81baf21e9
commit
392921f585
2 changed files with 15 additions and 0 deletions
|
@ -99,6 +99,7 @@ func GetUserOrgsList(ctx context.Context, user *user_model.User) ([]*MinimalOrg,
|
|||
if err := db.GetEngine(ctx).Select(columnsStr).
|
||||
Table("user").
|
||||
Where(builder.In("`user`.`id`", queryUserOrgIDs(user.ID, true))).
|
||||
OrderBy("`user`.lower_name ASC").
|
||||
Find(&orgs); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
@ -4,6 +4,8 @@
|
|||
package organization_test
|
||||
|
||||
import (
|
||||
"slices"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"code.gitea.io/gitea/models/db"
|
||||
|
@ -74,3 +76,15 @@ func TestGetUserOrgsList(t *testing.T) {
|
|||
assert.EqualValues(t, 2, orgs[0].NumRepos)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetUserOrgsListSorting(t *testing.T) {
|
||||
require.NoError(t, unittest.PrepareTestDatabase())
|
||||
orgs, err := organization.GetUserOrgsList(db.DefaultContext, &user_model.User{ID: 1})
|
||||
require.NoError(t, err)
|
||||
|
||||
isSorted := slices.IsSortedFunc(orgs, func(a, b *organization.MinimalOrg) int {
|
||||
return strings.Compare(strings.ToLower(a.Name), strings.ToLower(b.Name))
|
||||
})
|
||||
|
||||
assert.True(t, isSorted)
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue