mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-14 10:27:40 +00:00
fixup! fixup! fixup! adding more tests for ListOrganization()
This commit is contained in:
@@ -18,6 +18,7 @@ import (
|
|||||||
|
|
||||||
"github.com/zitadel/zitadel/internal/integration"
|
"github.com/zitadel/zitadel/internal/integration"
|
||||||
"github.com/zitadel/zitadel/pkg/grpc/admin"
|
"github.com/zitadel/zitadel/pkg/grpc/admin"
|
||||||
|
v2beta_object "github.com/zitadel/zitadel/pkg/grpc/object/v2beta"
|
||||||
org "github.com/zitadel/zitadel/pkg/grpc/org/v2beta"
|
org "github.com/zitadel/zitadel/pkg/grpc/org/v2beta"
|
||||||
v2beta_org "github.com/zitadel/zitadel/pkg/grpc/org/v2beta"
|
v2beta_org "github.com/zitadel/zitadel/pkg/grpc/org/v2beta"
|
||||||
"github.com/zitadel/zitadel/pkg/grpc/user/v2"
|
"github.com/zitadel/zitadel/pkg/grpc/user/v2"
|
||||||
@@ -274,15 +275,13 @@ func TestServer_ListOrganization(t *testing.T) {
|
|||||||
tests := []struct {
|
tests := []struct {
|
||||||
name string
|
name string
|
||||||
ctx context.Context
|
ctx context.Context
|
||||||
req *v2beta_org.ListOrganizationsRequest
|
query []*v2beta_org.OrgQuery
|
||||||
query *v2beta_org.OrgQuery
|
|
||||||
want []*v2beta_org.Organization
|
want []*v2beta_org.Organization
|
||||||
wantErr bool
|
wantErr bool
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
name: "list organizations happy path",
|
name: "list organizations happy path",
|
||||||
ctx: Instance.WithAuthorization(context.Background(), integration.UserTypeIAMOwner),
|
ctx: Instance.WithAuthorization(context.Background(), integration.UserTypeIAMOwner),
|
||||||
req: &v2beta_org.ListOrganizationsRequest{},
|
|
||||||
want: []*v2beta_org.Organization{
|
want: []*v2beta_org.Organization{
|
||||||
{
|
{
|
||||||
Id: orgs[0].Id,
|
Id: orgs[0].Id,
|
||||||
@@ -299,21 +298,147 @@ func TestServer_ListOrganization(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "list organizations happy path",
|
name: "list organizations specify org name equals",
|
||||||
ctx: Instance.WithAuthorization(context.Background(), integration.UserTypeIAMOwner),
|
ctx: Instance.WithAuthorization(context.Background(), integration.UserTypeIAMOwner),
|
||||||
req: &v2beta_org.ListOrganizationsRequest{},
|
query: []*v2beta_org.OrgQuery{
|
||||||
want: []*v2beta_org.Organization{
|
|
||||||
{
|
{
|
||||||
Id: orgs[0].Id,
|
Query: &v2beta_org.OrgQuery_NameQuery{
|
||||||
Name: orgsName[0],
|
NameQuery: &v2beta_org.OrgNameQuery{
|
||||||
|
Name: orgsName[1],
|
||||||
|
Method: v2beta_object.TextQueryMethod_TEXT_QUERY_METHOD_EQUALS,
|
||||||
},
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
want: []*v2beta_org.Organization{
|
||||||
{
|
{
|
||||||
Id: orgs[1].Id,
|
Id: orgs[1].Id,
|
||||||
Name: orgsName[1],
|
Name: orgsName[1],
|
||||||
},
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
Id: orgs[2].Id,
|
name: "list organizations specify org name contains",
|
||||||
Name: orgsName[2],
|
ctx: Instance.WithAuthorization(context.Background(), integration.UserTypeIAMOwner),
|
||||||
|
query: []*v2beta_org.OrgQuery{
|
||||||
|
{
|
||||||
|
Query: &v2beta_org.OrgQuery_NameQuery{
|
||||||
|
NameQuery: &v2beta_org.OrgNameQuery{
|
||||||
|
Name: func() string {
|
||||||
|
return orgsName[1][1 : len(orgsName[1])-2]
|
||||||
|
}(),
|
||||||
|
Method: v2beta_object.TextQueryMethod_TEXT_QUERY_METHOD_CONTAINS,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
want: []*v2beta_org.Organization{
|
||||||
|
{
|
||||||
|
Id: orgs[1].Id,
|
||||||
|
Name: orgsName[1],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "list organizations specify org name contains IGNORE CASE",
|
||||||
|
ctx: Instance.WithAuthorization(context.Background(), integration.UserTypeIAMOwner),
|
||||||
|
query: []*v2beta_org.OrgQuery{
|
||||||
|
{
|
||||||
|
Query: &v2beta_org.OrgQuery_NameQuery{
|
||||||
|
NameQuery: &v2beta_org.OrgNameQuery{
|
||||||
|
Name: func() string {
|
||||||
|
return strings.ToUpper(orgsName[1][1 : len(orgsName[1])-2])
|
||||||
|
}(),
|
||||||
|
Method: v2beta_object.TextQueryMethod_TEXT_QUERY_METHOD_CONTAINS_IGNORE_CASE,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
want: []*v2beta_org.Organization{
|
||||||
|
{
|
||||||
|
Id: orgs[1].Id,
|
||||||
|
Name: orgsName[1],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "list organizations specify domain name equals",
|
||||||
|
ctx: Instance.WithAuthorization(context.Background(), integration.UserTypeIAMOwner),
|
||||||
|
query: []*v2beta_org.OrgQuery{
|
||||||
|
{
|
||||||
|
Query: &org.OrgQuery_DomainQuery{
|
||||||
|
DomainQuery: &org.OrgDomainQuery{
|
||||||
|
Domain: func() string {
|
||||||
|
listOrgRes, err := Client.ListOrganizations(CTX, &v2beta_org.ListOrganizationsRequest{
|
||||||
|
Queries: []*v2beta_org.OrgQuery{
|
||||||
|
{
|
||||||
|
Query: &v2beta_org.OrgQuery_IdQuery{
|
||||||
|
IdQuery: &v2beta_org.OrgIDQuery{
|
||||||
|
Id: orgs[1].Id,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
require.NoError(t, err)
|
||||||
|
domain := listOrgRes.Result[0].PrimaryDomain
|
||||||
|
return domain
|
||||||
|
}(),
|
||||||
|
Method: v2beta_object.TextQueryMethod_TEXT_QUERY_METHOD_EQUALS,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
want: []*v2beta_org.Organization{
|
||||||
|
{
|
||||||
|
Id: orgs[1].Id,
|
||||||
|
Name: orgsName[1],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "list organizations specify domain name contains",
|
||||||
|
ctx: Instance.WithAuthorization(context.Background(), integration.UserTypeIAMOwner),
|
||||||
|
query: []*v2beta_org.OrgQuery{
|
||||||
|
{
|
||||||
|
Query: &org.OrgQuery_DomainQuery{
|
||||||
|
DomainQuery: &org.OrgDomainQuery{
|
||||||
|
Domain: func() string {
|
||||||
|
domain := strings.ToLower(strings.ReplaceAll(orgsName[1][1:len(orgsName[1])-2], " ", "-"))
|
||||||
|
return domain
|
||||||
|
}(),
|
||||||
|
Method: v2beta_object.TextQueryMethod_TEXT_QUERY_METHOD_CONTAINS,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
want: []*v2beta_org.Organization{
|
||||||
|
{
|
||||||
|
Id: orgs[1].Id,
|
||||||
|
Name: orgsName[1],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "list organizations specify org name contains IGNORE CASE",
|
||||||
|
ctx: Instance.WithAuthorization(context.Background(), integration.UserTypeIAMOwner),
|
||||||
|
query: []*v2beta_org.OrgQuery{
|
||||||
|
{
|
||||||
|
Query: &org.OrgQuery_DomainQuery{
|
||||||
|
DomainQuery: &org.OrgDomainQuery{
|
||||||
|
Domain: func() string {
|
||||||
|
domain := strings.ToUpper(strings.ReplaceAll(orgsName[1][1:len(orgsName[1])-2], " ", "-"))
|
||||||
|
return domain
|
||||||
|
}(),
|
||||||
|
Method: v2beta_object.TextQueryMethod_TEXT_QUERY_METHOD_CONTAINS_IGNORE_CASE,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
want: []*v2beta_org.Organization{
|
||||||
|
{
|
||||||
|
Id: orgs[1].Id,
|
||||||
|
Name: orgsName[1],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -323,7 +448,7 @@ func TestServer_ListOrganization(t *testing.T) {
|
|||||||
retryDuration, tick := integration.WaitForAndTickWithMaxDuration(context.Background(), 10*time.Minute)
|
retryDuration, tick := integration.WaitForAndTickWithMaxDuration(context.Background(), 10*time.Minute)
|
||||||
require.EventuallyWithT(t, func(ttt *assert.CollectT) {
|
require.EventuallyWithT(t, func(ttt *assert.CollectT) {
|
||||||
got, err := Client.ListOrganizations(tt.ctx, &v2beta_org.ListOrganizationsRequest{
|
got, err := Client.ListOrganizations(tt.ctx, &v2beta_org.ListOrganizationsRequest{
|
||||||
Queries: tt.req.Queries,
|
Queries: tt.query,
|
||||||
})
|
})
|
||||||
|
|
||||||
if tt.wantErr {
|
if tt.wantErr {
|
||||||
@@ -332,13 +457,6 @@ func TestServer_ListOrganization(t *testing.T) {
|
|||||||
}
|
}
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
// check details
|
|
||||||
// assert.NotZero(t, got.GetDetails().GetSequence())
|
|
||||||
// gotCD := got.GetDetails().GetChangeDate().AsTime()
|
|
||||||
// now := time.Now()
|
|
||||||
// assert.WithinRange(t, gotCD, now.Add(-time.Minute), now.Add(time.Minute))
|
|
||||||
// assert.NotEmpty(t, got.GetDetails().GetResourceOwner())
|
|
||||||
|
|
||||||
foundOrgs := 0
|
foundOrgs := 0
|
||||||
for _, got := range got.Result {
|
for _, got := range got.Result {
|
||||||
for _, org := range tt.want {
|
for _, org := range tt.want {
|
||||||
|
Reference in New Issue
Block a user