feat: create user scim v2 endpoint (#9132)

# Which Problems Are Solved
- Adds infrastructure code (basic implementation, error handling,
middlewares, ...) to implement the SCIM v2 interface
- Adds support for the user create SCIM v2 endpoint

# How the Problems Are Solved
- Adds support for the user create SCIM v2 endpoint under `POST
/scim/v2/{orgID}/Users`

# Additional Context

Part of #8140
This commit is contained in:
Lars
2025-01-09 12:46:36 +01:00
committed by GitHub
parent 829f4543da
commit e621224ab2
44 changed files with 2412 additions and 48 deletions

View File

@@ -1,6 +1,7 @@
package zerrors_test
import (
"errors"
"testing"
"github.com/stretchr/testify/assert"
@@ -17,3 +18,27 @@ func TestErrorMethod(t *testing.T) {
subExptected := "ID=subID Message=subMsg Parent=(ID=id Message=msg)"
assert.Equal(t, subExptected, err.Error())
}
func TestIsZitadelError(t *testing.T) {
tests := []struct {
name string
err error
want bool
}{
{
name: "zitadel error",
err: zerrors.ThrowInvalidArgument(nil, "id", "msg"),
want: true,
},
{
name: "other error",
err: errors.New("just a random error"),
want: false,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
assert.Equalf(t, tt.want, zerrors.IsZitadelError(tt.err), "IsZitadelError(%v)", tt.err)
})
}
}