mirror of
https://github.com/absmach/magistrala.git
synced 2026-06-23 04:10:28 +00:00
NOISSUE - Fix Groups and Channels Users Listing (#3138)
Signed-off-by: musilah <nataleigh.nk@gmail.com>
This commit is contained in:
@@ -1340,22 +1340,22 @@ func PageQuery(pm channels.Page) (string, error) {
|
||||
}
|
||||
|
||||
func applyOrdering(emq string, pm channels.Page) string {
|
||||
var orderBy string
|
||||
col := "COALESCE(c.updated_at, c.created_at)"
|
||||
switch pm.Order {
|
||||
case "name":
|
||||
orderBy = "name"
|
||||
col = "c.name"
|
||||
case "created_at":
|
||||
orderBy = "created_at"
|
||||
case "updated_at":
|
||||
orderBy = "COALESCE(updated_at, created_at)"
|
||||
default:
|
||||
return emq
|
||||
col = "c.created_at"
|
||||
case "updated_at", "":
|
||||
col = "COALESCE(c.updated_at, c.created_at)"
|
||||
}
|
||||
|
||||
if pm.Dir == api.AscDir || pm.Dir == api.DescDir {
|
||||
return fmt.Sprintf("%s ORDER BY %s %s, id %s", emq, orderBy, pm.Dir, pm.Dir)
|
||||
dir := pm.Dir
|
||||
if dir != api.AscDir && dir != api.DescDir {
|
||||
dir = api.DescDir
|
||||
}
|
||||
return fmt.Sprintf("%s ORDER BY %s", emq, orderBy)
|
||||
|
||||
return fmt.Sprintf("%s ORDER BY %s %s, c.id %s", emq, col, dir, dir)
|
||||
}
|
||||
|
||||
func applyLimitOffset(query string) string {
|
||||
|
||||
@@ -576,6 +576,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Page: channels.Page{
|
||||
Offset: 0,
|
||||
Limit: 10,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
},
|
||||
response: channels.ChannelsPage{
|
||||
@@ -594,6 +596,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Page: channels.Page{
|
||||
Offset: 10,
|
||||
Limit: 10,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
},
|
||||
response: channels.ChannelsPage{
|
||||
@@ -612,6 +616,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Page: channels.Page{
|
||||
Offset: 0,
|
||||
Limit: 50,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
},
|
||||
response: channels.ChannelsPage{
|
||||
@@ -630,6 +636,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Page: channels.Page{
|
||||
Offset: 50,
|
||||
Limit: 50,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
},
|
||||
response: channels.ChannelsPage{
|
||||
@@ -648,6 +656,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Page: channels.Page{
|
||||
Offset: 1000,
|
||||
Limit: 50,
|
||||
Order: "created_at",
|
||||
Dir: "desc",
|
||||
},
|
||||
},
|
||||
response: channels.ChannelsPage{
|
||||
@@ -666,6 +676,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Page: channels.Page{
|
||||
Offset: 170,
|
||||
Limit: 50,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
},
|
||||
response: channels.ChannelsPage{
|
||||
|
||||
+18
-13
@@ -256,9 +256,13 @@ func (repo domainRepo) RetrieveAllDomainsByIDs(ctx context.Context, pm domains.P
|
||||
return domains.DomainsPage{}, errors.Wrap(repoerr.ErrFailedOpDB, err)
|
||||
}
|
||||
|
||||
q = `SELECT d.id as id, d.name as name, d.tags as tags, d.route as route, d.metadata as metadata, d.created_at as created_at, d.updated_at as updated_at, d.updated_by as updated_by, d.created_by as created_by, d.status as status
|
||||
FROM domains d`
|
||||
q = fmt.Sprintf("%s %s LIMIT %d OFFSET %d;", q, query, pm.Limit, pm.Offset)
|
||||
baseQ := `SELECT d.id as id, d.name as name, d.tags as tags, d.route as route, d.metadata as metadata,
|
||||
d.created_at as created_at, d.updated_at as updated_at, d.updated_by as updated_by,
|
||||
d.created_by as created_by, d.status as status FROM domains d`
|
||||
|
||||
squery := applyOrdering(query, pm)
|
||||
|
||||
q = fmt.Sprintf("%s %s LIMIT %d OFFSET %d;", baseQ, squery, pm.Limit, pm.Offset)
|
||||
|
||||
dbPage, err := toDBDomainsPage(pm)
|
||||
if err != nil {
|
||||
@@ -521,22 +525,23 @@ func (repo domainRepo) processRows(rows *sqlx.Rows) ([]domains.Domain, error) {
|
||||
}
|
||||
|
||||
func applyOrdering(emq string, pm domains.Page) string {
|
||||
var orderBy string
|
||||
col := "COALESCE(d.updated_at, d.created_at)"
|
||||
|
||||
switch pm.Order {
|
||||
case "name":
|
||||
orderBy = "d.name"
|
||||
col = "d.name"
|
||||
case "created_at":
|
||||
orderBy = "d.created_at"
|
||||
case "updated_at":
|
||||
orderBy = "COALESCE(d.updated_at, d.created_at)"
|
||||
default:
|
||||
return emq
|
||||
col = "d.created_at"
|
||||
case "updated_at", "":
|
||||
col = "COALESCE(d.updated_at, d.created_at)"
|
||||
}
|
||||
|
||||
if pm.Dir == api.AscDir || pm.Dir == api.DescDir {
|
||||
return fmt.Sprintf("%s ORDER BY %s %s, d.id %s", emq, orderBy, pm.Dir, pm.Dir)
|
||||
dir := pm.Dir
|
||||
if dir != api.AscDir && dir != api.DescDir {
|
||||
dir = api.DescDir
|
||||
}
|
||||
return fmt.Sprintf("%s ORDER BY %s", emq, orderBy)
|
||||
|
||||
return fmt.Sprintf("%s ORDER BY %s %s, d.id %s", emq, col, dir, dir)
|
||||
}
|
||||
|
||||
type dbDomain struct {
|
||||
|
||||
@@ -285,6 +285,7 @@ func TestRetrieveAllByIDs(t *testing.T) {
|
||||
CreatedBy: userID,
|
||||
UpdatedBy: userID,
|
||||
Status: domains.EnabledStatus,
|
||||
CreatedAt: time.Now().UTC().Truncate(time.Millisecond),
|
||||
}
|
||||
if i%5 == 0 {
|
||||
domain.Status = domains.DisabledStatus
|
||||
@@ -310,6 +311,8 @@ func TestRetrieveAllByIDs(t *testing.T) {
|
||||
Offset: 0,
|
||||
Limit: 10,
|
||||
IDs: []string{items[1].ID, items[2].ID},
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: domains.DomainsPage{
|
||||
Total: 2,
|
||||
@@ -369,6 +372,8 @@ func TestRetrieveAllByIDs(t *testing.T) {
|
||||
Limit: 10,
|
||||
IDs: []string{items[0].ID, items[1].ID},
|
||||
Status: 5,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: domains.DomainsPage{
|
||||
Total: 2,
|
||||
@@ -402,6 +407,8 @@ func TestRetrieveAllByIDs(t *testing.T) {
|
||||
"test": "test",
|
||||
},
|
||||
Status: domains.EnabledStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: domains.DomainsPage{
|
||||
Total: 2,
|
||||
@@ -702,6 +709,7 @@ func TestListDomains(t *testing.T) {
|
||||
CreatedBy: userID,
|
||||
UpdatedBy: userID,
|
||||
Status: domains.EnabledStatus,
|
||||
CreatedAt: time.Now().UTC().Truncate(time.Millisecond),
|
||||
}
|
||||
if i%5 == 0 {
|
||||
domain.Status = domains.DisabledStatus
|
||||
@@ -726,6 +734,8 @@ func TestListDomains(t *testing.T) {
|
||||
Offset: 0,
|
||||
Limit: 10,
|
||||
Status: domains.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: domains.DomainsPage{
|
||||
Total: 10,
|
||||
@@ -741,6 +751,8 @@ func TestListDomains(t *testing.T) {
|
||||
Offset: 0,
|
||||
Limit: 10,
|
||||
Status: domains.EnabledStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: domains.DomainsPage{
|
||||
Total: 8,
|
||||
@@ -757,6 +769,8 @@ func TestListDomains(t *testing.T) {
|
||||
Limit: 10,
|
||||
Name: items[0].Name,
|
||||
Status: domains.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: domains.DomainsPage{
|
||||
Total: 1,
|
||||
@@ -772,6 +786,8 @@ func TestListDomains(t *testing.T) {
|
||||
Offset: 0,
|
||||
Limit: 10,
|
||||
Status: domains.DisabledStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: domains.DomainsPage{
|
||||
Total: 2,
|
||||
@@ -788,6 +804,8 @@ func TestListDomains(t *testing.T) {
|
||||
Limit: 10,
|
||||
Tag: "admin",
|
||||
Status: domains.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: domains.DomainsPage{
|
||||
Total: 2,
|
||||
@@ -822,6 +840,8 @@ func TestListDomains(t *testing.T) {
|
||||
"test1": "test1",
|
||||
},
|
||||
Status: domains.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: domains.DomainsPage{
|
||||
Total: 2,
|
||||
|
||||
+56
-60
@@ -430,7 +430,7 @@ func (repo groupRepository) RetrieveAll(ctx context.Context, pm groups.PageMeta)
|
||||
orderClause = fmt.Sprintf("ORDER BY %s %s, g.id %s", orderBy, dir, dir)
|
||||
}
|
||||
|
||||
q := fmt.Sprintf(`SELECT DISTINCT g.id, g.domain_id, tags, COALESCE(g.parent_id, '') AS parent_id, g.name, g.description,
|
||||
q := fmt.Sprintf(`SELECT g.id, g.domain_id, tags, COALESCE(g.parent_id, '') AS parent_id, g.name, g.description,
|
||||
g.metadata, g.created_at, g.updated_at, g.updated_by, g.status FROM groups g %s %s LIMIT :limit OFFSET :offset;`, query, orderClause)
|
||||
|
||||
dbPageMeta, err := toDBGroupPageMeta(pm)
|
||||
@@ -454,7 +454,7 @@ func (repo groupRepository) RetrieveAll(ctx context.Context, pm groups.PageMeta)
|
||||
|
||||
cq := fmt.Sprintf(` SELECT COUNT(*) AS total_count
|
||||
FROM (
|
||||
SELECT DISTINCT g.id, g.domain_id, COALESCE(g.parent_id, '') AS parent_id, g.name, g.tags, g.description,
|
||||
SELECT g.id, g.domain_id, COALESCE(g.parent_id, '') AS parent_id, g.name, g.tags, g.description,
|
||||
g.metadata, g.created_at, g.updated_at, g.updated_by, g.status FROM groups g %s
|
||||
) AS subquery;
|
||||
`, query)
|
||||
@@ -849,37 +849,54 @@ func (repo groupRepository) RetrieveUserGroups(ctx context.Context, domainID, us
|
||||
|
||||
func (repo groupRepository) retrieveGroups(ctx context.Context, domainID, userID, query string, pm groups.PageMeta) (groups.Page, error) {
|
||||
baseQuery := repo.userGroupsBaseQuery(domainID, userID)
|
||||
|
||||
orderClause := ""
|
||||
var orderBy string
|
||||
switch pm.Order {
|
||||
case "name":
|
||||
orderBy = "g.name"
|
||||
case "created_at":
|
||||
orderBy = "g.created_at"
|
||||
case "updated_at", "":
|
||||
orderBy = "COALESCE(g.updated_at, g.created_at)"
|
||||
}
|
||||
|
||||
if orderBy != "" {
|
||||
dir := pm.Dir
|
||||
if dir != api.AscDir && dir != api.DescDir {
|
||||
dir = api.DescDir
|
||||
}
|
||||
orderClause = fmt.Sprintf("ORDER BY %s %s, g.id %s", orderBy, dir, dir)
|
||||
}
|
||||
|
||||
q := fmt.Sprintf(`%s
|
||||
SELECT
|
||||
g.id,
|
||||
g.name,
|
||||
g.domain_id,
|
||||
COALESCE(g.parent_id, '') AS parent_id,
|
||||
g.description,
|
||||
g.tags,
|
||||
g.metadata,
|
||||
g.created_at,
|
||||
g.updated_at,
|
||||
g.updated_by,
|
||||
g.status,
|
||||
g.path as path,
|
||||
g.role_id,
|
||||
g.role_name,
|
||||
g.actions,
|
||||
g.access_type,
|
||||
g.access_provider_id,
|
||||
g.access_provider_role_id,
|
||||
g.access_provider_role_name,
|
||||
g.access_provider_role_actions
|
||||
FROM
|
||||
final_groups g
|
||||
%s
|
||||
ORDER BY
|
||||
g.created_at
|
||||
LIMIT :limit
|
||||
OFFSET :offset;
|
||||
`,
|
||||
baseQuery, query)
|
||||
SELECT
|
||||
g.id,
|
||||
g.name,
|
||||
g.domain_id,
|
||||
COALESCE(g.parent_id, '') AS parent_id,
|
||||
g.description,
|
||||
g.tags,
|
||||
g.metadata,
|
||||
g.created_at,
|
||||
g.updated_at,
|
||||
g.updated_by,
|
||||
g.status,
|
||||
g.path as path,
|
||||
g.role_id,
|
||||
g.role_name,
|
||||
g.actions,
|
||||
g.access_type,
|
||||
g.access_provider_id,
|
||||
g.access_provider_role_id,
|
||||
g.access_provider_role_name,
|
||||
g.access_provider_role_actions
|
||||
FROM final_groups g
|
||||
%s
|
||||
%s
|
||||
LIMIT :limit OFFSET :offset;`,
|
||||
baseQuery, query, orderClause)
|
||||
|
||||
dbPageMeta, err := toDBGroupPageMeta(pm)
|
||||
if err != nil {
|
||||
return groups.Page{}, errors.Wrap(repoerr.ErrFailedToRetrieveAllGroups, err)
|
||||
@@ -900,34 +917,13 @@ func (repo groupRepository) retrieveGroups(ctx context.Context, domainID, userID
|
||||
}
|
||||
|
||||
cq := fmt.Sprintf(`%s
|
||||
SELECT COUNT(*) AS total_count
|
||||
FROM (
|
||||
SELECT
|
||||
g.id,
|
||||
g.name,
|
||||
g.domain_id,
|
||||
COALESCE(g.parent_id, '') AS parent_id,
|
||||
g.description,
|
||||
g.tags,
|
||||
g.metadata,
|
||||
g.created_at,
|
||||
g.updated_at,
|
||||
g.updated_by,
|
||||
g.status,
|
||||
g.path as path,
|
||||
g.role_id,
|
||||
g.role_name,
|
||||
g.actions,
|
||||
g.access_type,
|
||||
g.access_provider_id,
|
||||
g.access_provider_role_id,
|
||||
g.access_provider_role_name,
|
||||
g.access_provider_role_actions
|
||||
FROM
|
||||
final_groups g
|
||||
%s
|
||||
) AS subquery;
|
||||
`, baseQuery, query)
|
||||
SELECT COUNT(*) AS total_count
|
||||
FROM (
|
||||
SELECT g.id
|
||||
FROM final_groups g
|
||||
%s
|
||||
) AS subquery;`,
|
||||
baseQuery, query)
|
||||
|
||||
total, err := postgres.Total(ctx, repo.db, cq, dbPageMeta)
|
||||
if err != nil {
|
||||
|
||||
+25
-28
@@ -117,28 +117,11 @@ func (repo *userRepo) RetrieveAll(ctx context.Context, pm users.Page) (users.Use
|
||||
return users.UsersPage{}, errors.Wrap(repoerr.ErrViewEntity, err)
|
||||
}
|
||||
|
||||
orderClause := ""
|
||||
switch pm.Order {
|
||||
case "first_name":
|
||||
orderClause = "ORDER BY u.first_name"
|
||||
case "last_name":
|
||||
orderClause = "ORDER BY u.last_name"
|
||||
case "username":
|
||||
orderClause = "ORDER BY u.username"
|
||||
case "email":
|
||||
orderClause = "ORDER BY u.email"
|
||||
case "created_at":
|
||||
orderClause = "ORDER BY u.created_at"
|
||||
case "updated_at":
|
||||
orderClause = "ORDER BY COALESCE(u.updated_at, u.created_at)"
|
||||
}
|
||||
if orderClause != "" && (pm.Dir == api.AscDir || pm.Dir == api.DescDir) {
|
||||
orderClause = fmt.Sprintf("%s %s, u.id %s", orderClause, pm.Dir, pm.Dir)
|
||||
}
|
||||
squery := applyOrdering(query, pm)
|
||||
|
||||
q := fmt.Sprintf(`SELECT u.id, u.tags, u.email, u.metadata, u.status, u.role, u.first_name, u.last_name, u.username,
|
||||
u.created_at, u.updated_at, u.profile_picture, COALESCE(u.updated_by, '') AS updated_by, u.verified_at
|
||||
FROM users u %s %s LIMIT :limit OFFSET :offset;`, query, orderClause)
|
||||
FROM users u %s LIMIT :limit OFFSET :offset;`, squery)
|
||||
|
||||
dbPage, err := ToDBUsersPage(pm)
|
||||
if err != nil {
|
||||
@@ -385,11 +368,10 @@ func (repo *userRepo) RetrieveAllByIDs(ctx context.Context, pm users.Page) (user
|
||||
if err != nil {
|
||||
return users.UsersPage{}, errors.Wrap(repoerr.ErrViewEntity, err)
|
||||
}
|
||||
query = applyOrdering(query, pm)
|
||||
squery := applyOrdering(query, pm)
|
||||
|
||||
q := fmt.Sprintf(`SELECT u.id, u.username, u.tags, u.email, u.metadata, u.status, u.role, u.first_name, u.last_name,
|
||||
u.created_at, u.updated_at, COALESCE(u.updated_by, '') AS updated_by FROM users u %s ORDER BY u.created_at LIMIT :limit OFFSET :offset;`, query)
|
||||
|
||||
u.created_at, u.updated_at, COALESCE(u.updated_by, '') AS updated_by FROM users u %s LIMIT :limit OFFSET :offset;`, squery)
|
||||
dbPage, err := ToDBUsersPage(pm)
|
||||
if err != nil {
|
||||
return users.UsersPage{}, errors.Wrap(repoerr.ErrFailedToRetrieveAllGroups, err)
|
||||
@@ -687,14 +669,29 @@ func PageQuery(pm users.Page) (string, error) {
|
||||
}
|
||||
|
||||
func applyOrdering(emq string, pm users.Page) string {
|
||||
col := "COALESCE(u.updated_at, u.created_at)"
|
||||
|
||||
switch pm.Order {
|
||||
case "username", "first_name", "email", "last_name", "created_at", "updated_at":
|
||||
emq = fmt.Sprintf("%s ORDER BY %s", emq, pm.Order)
|
||||
if pm.Dir == api.AscDir || pm.Dir == api.DescDir {
|
||||
emq = fmt.Sprintf("%s %s", emq, pm.Dir)
|
||||
}
|
||||
case "username":
|
||||
col = "u.username"
|
||||
case "first_name":
|
||||
col = "u.first_name"
|
||||
case "last_name":
|
||||
col = "u.last_name"
|
||||
case "email":
|
||||
col = "u.email"
|
||||
case "created_at":
|
||||
col = "u.created_at"
|
||||
case "updated_at", "":
|
||||
col = "COALESCE(u.updated_at, u.created_at)"
|
||||
}
|
||||
return emq
|
||||
|
||||
dir := pm.Dir
|
||||
if dir != api.AscDir && dir != api.DescDir {
|
||||
dir = api.DescDir
|
||||
}
|
||||
|
||||
return fmt.Sprintf("%s ORDER BY %s %s, u.id %s", emq, col, dir, dir)
|
||||
}
|
||||
|
||||
func stringToNullString(s string) sql.NullString {
|
||||
|
||||
@@ -320,9 +320,10 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Username: namesgen.Generate(),
|
||||
Secret: "",
|
||||
},
|
||||
Metadata: users.Metadata{},
|
||||
Status: users.EnabledStatus,
|
||||
Tags: []string{"tag1"},
|
||||
Metadata: users.Metadata{},
|
||||
Status: users.EnabledStatus,
|
||||
Tags: []string{"tag1"},
|
||||
CreatedAt: time.Now().UTC().Truncate(time.Millisecond),
|
||||
}
|
||||
if i%50 == 0 {
|
||||
user.Metadata = map[string]any{
|
||||
@@ -352,6 +353,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Limit: 50,
|
||||
Role: users.AllRole,
|
||||
Status: users.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -370,6 +373,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Limit: 200,
|
||||
Role: users.AllRole,
|
||||
Status: users.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -388,6 +393,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Limit: 50,
|
||||
Role: users.AllRole,
|
||||
Status: users.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -423,6 +430,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Limit: 1000,
|
||||
Role: users.AllRole,
|
||||
Status: users.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -455,6 +464,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Limit: 3,
|
||||
Role: users.AllRole,
|
||||
Status: users.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -493,6 +504,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Limit: 3,
|
||||
Role: users.AllRole,
|
||||
Status: users.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -512,6 +525,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Limit: 3,
|
||||
Role: users.AllRole,
|
||||
Status: users.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -530,6 +545,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Offset: 0,
|
||||
Limit: 200,
|
||||
Role: users.AllRole,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -548,6 +565,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Offset: 0,
|
||||
Limit: 200,
|
||||
Role: users.AllRole,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -565,6 +584,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Offset: 0,
|
||||
Limit: 200,
|
||||
Role: users.AllRole,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -622,6 +643,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Limit: 200,
|
||||
Role: users.AllRole,
|
||||
Status: users.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -661,6 +684,8 @@ func TestRetrieveAll(t *testing.T) {
|
||||
Offset: 0,
|
||||
Limit: 200,
|
||||
Status: users.AllStatus,
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
page: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -1733,6 +1758,8 @@ func TestRetrieveByIDs(t *testing.T) {
|
||||
Offset: 0,
|
||||
Limit: 10,
|
||||
IDs: getIDs(items[0:3]),
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -1765,6 +1792,8 @@ func TestRetrieveByIDs(t *testing.T) {
|
||||
page: users.Page{
|
||||
Offset: 10,
|
||||
IDs: getIDs(items[0:20]),
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -1781,6 +1810,8 @@ func TestRetrieveByIDs(t *testing.T) {
|
||||
page: users.Page{
|
||||
Limit: 10,
|
||||
IDs: getIDs(items[0:20]),
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -1815,6 +1846,8 @@ func TestRetrieveByIDs(t *testing.T) {
|
||||
Offset: 15,
|
||||
Limit: 10,
|
||||
IDs: getIDs(items[0:20]),
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: users.UsersPage{
|
||||
Page: users.Page{
|
||||
@@ -1850,6 +1883,8 @@ func TestRetrieveByIDs(t *testing.T) {
|
||||
Limit: 10,
|
||||
FirstName: items[0].FirstName,
|
||||
IDs: getIDs(items[0:20]),
|
||||
Order: "created_at",
|
||||
Dir: "asc",
|
||||
},
|
||||
response: users.UsersPage{
|
||||
Page: users.Page{
|
||||
|
||||
Reference in New Issue
Block a user