1
0
forked from baron/baron-sso

Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
2026-06-09 21:03:19 +09:00
12 changed files with 611 additions and 6 deletions

View File

@@ -1817,6 +1817,7 @@ func collectEmailList(traits map[string]any, primaryEmail string) []string {
func buildIdentityLookupCandidates(loginID string) []string {
seen := make(map[string]struct{})
candidates := make([]string, 0, 3)
add := func(value string) {
candidate := strings.TrimSpace(value)
if candidate == "" {
@@ -1826,6 +1827,7 @@ func buildIdentityLookupCandidates(loginID string) []string {
return
}
seen[candidate] = struct{}{}
candidates = append(candidates, candidate)
}
normalized := strings.TrimSpace(loginID)
@@ -1837,10 +1839,6 @@ func buildIdentityLookupCandidates(loginID string) []string {
add(normalizePhoneForLoginID(normalized))
}
candidates := make([]string, 0, len(seen))
for candidate := range seen {
candidates = append(candidates, candidate)
}
return candidates
}

View File

@@ -62,6 +62,7 @@ func TestWorksmobileSyncServiceEnqueuesSuspendedUserStatusWithOrganizations(t *t
t.Setenv("SAMAN_DOMAIN_ID", "1001")
rootID := "root-tenant"
tenantID := "saman-tenant"
userGroupID := "saman-user-group"
root := domain.Tenant{
ID: rootID,
Slug: HanmacFamilyTenantSlug,
@@ -75,16 +76,26 @@ func TestWorksmobileSyncServiceEnqueuesSuspendedUserStatusWithOrganizations(t *t
ParentID: &rootID,
Domains: []domain.TenantDomain{{Domain: "samaneng.com"}},
}
userGroup := domain.Tenant{
ID: userGroupID,
Slug: "saman-team",
Name: "Saman Team",
Type: domain.TenantTypeUserGroup,
ParentID: &tenantID,
}
target := domain.User{
ID: "target-user",
Email: "target@samaneng.com",
Name: "Target",
Status: domain.UserStatusSuspended,
TenantID: &tenantID,
TenantID: &userGroupID,
}
outboxRepo := &fakeWorksmobileOutboxRepo{}
service := NewWorksmobileSyncService(
&fakeWorksmobileTenantService{tenants: map[string]domain.Tenant{rootID: root, tenantID: tenant}, list: []domain.Tenant{root, tenant}},
&fakeWorksmobileTenantService{
tenants: map[string]domain.Tenant{rootID: root, tenantID: tenant, userGroupID: userGroup},
list: []domain.Tenant{root, tenant, userGroup},
},
&fakeWorksmobileUserRepo{byID: map[string]domain.User{target.ID: target}, byTenant: []domain.User{target}},
outboxRepo,
nil,