IAM: Adds the team creation endpoint in app platform (#111003)

* implement team creation for legacy store

* add generated code

* add basic integration test

* add new fields to get and list teams

* fix sql tests for teams

* register dual writer for team resource

* add generated code

* add more sql tests for team creation

* address feedback

* add integration tests
This commit is contained in:
Mihai Doarna
2025-09-18 14:43:07 +03:00
committed by GitHub
parent 975ba0bf8b
commit 9d9dca3208
35 changed files with 1441 additions and 114 deletions
+33
View File
@@ -54,6 +54,12 @@ func TestIdentityQueries(t *testing.T) {
return &v
}
createTeam := func(cmd *CreateTeamCommand) sqltemplate.SQLTemplate {
v := newCreateTeam(nodb, cmd)
v.SQLTemplate = mocks.NewTestingSQLTemplate()
return &v
}
listTeams := func(q *ListTeamQuery) sqltemplate.SQLTemplate {
v := newListTeams(nodb, q)
v.SQLTemplate = mocks.NewTestingSQLTemplate()
@@ -354,6 +360,33 @@ func TestIdentityQueries(t *testing.T) {
Data: deleteOrgUser(456),
},
},
sqlCreateTeamTemplate: {
{
Name: "create_team_non_provisioned",
Data: createTeam(&CreateTeamCommand{
UID: "team-1",
Name: "Team 1",
Email: "team1@example.com",
IsProvisioned: false,
OrgID: 1,
Created: NewDBTime(time.Date(2023, 1, 1, 12, 0, 0, 0, time.UTC)),
Updated: NewDBTime(time.Date(2023, 1, 1, 12, 0, 0, 0, time.UTC)),
}),
},
{
Name: "create_team_provisioned",
Data: createTeam(&CreateTeamCommand{
UID: "team-2",
Name: "Team 2",
Email: "team2@example.com",
IsProvisioned: true,
ExternalUID: "team-2-uid",
OrgID: 1,
Created: NewDBTime(time.Date(2023, 1, 1, 12, 0, 0, 0, time.UTC)),
Updated: NewDBTime(time.Date(2023, 1, 1, 12, 0, 0, 0, time.UTC)),
}),
},
},
sqlCreateOrgUserTemplate: {
{
Name: "create_org_user_basic",