From aea1fb807a16acd8406b94a72c3b39be8c3e1280 Mon Sep 17 00:00:00 2001 From: aeneasr <3372410+aeneasr@users.noreply.github.com> Date: Mon, 27 Jul 2020 14:37:28 +0200 Subject: [PATCH] test: add handler update tests Closes #325 --- identity/handler_test.go | 20 ++++++++++++++++++++ internal/testhelpers/json.go | 6 +++--- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/identity/handler_test.go b/identity/handler_test.go index 7d9722a0eb7..43ebf364679 100644 --- a/identity/handler_test.go +++ b/identity/handler_test.go @@ -234,6 +234,26 @@ func TestHandler(t *testing.T) { assert.EqualValues(t, "ory street", res.Get("traits.address").String(), "%s", res.Raw) }) + t.Run("case=should be able to update multiple identities", func(t *testing.T) { + for i := 0; i <= 5; i++ { + var cr identity.CreateIdentityRequestPayload + cr.SchemaID = "employee" + cr.Traits = []byte(`{"department": "ory"}`) + res := send(t, "POST", "/identities", http.StatusCreated, &cr) + + id := res.Get("id").String() + res = send(t, "PUT", "/identities/"+id, http.StatusOK, &identity.UpdateIdentityRequestPayload{ + SchemaID: "employee", + Traits: []byte(`{"email":"` + x.NewUUID().String() + `@ory.sh"}`), + }) + + res = send(t, "PUT", "/identities/"+id, http.StatusOK, &identity.UpdateIdentityRequestPayload{ + SchemaID: "employee", + Traits: []byte(`{}`), + }) + } + }) + t.Run("case=should list all identities", func(t *testing.T) { res := get(t, "/identities", http.StatusOK) assert.Empty(t, res.Get("0.credentials").String(), "%s", res.Raw) diff --git a/internal/testhelpers/json.go b/internal/testhelpers/json.go index d6d94646eae..dc1b8d88551 100644 --- a/internal/testhelpers/json.go +++ b/internal/testhelpers/json.go @@ -17,7 +17,7 @@ func JSONEq(t *testing.T, expected, actual interface{}, messageAndArgs ...interf } func LogJSON(t *testing.T, v interface{}) { - out, err := json.MarshalIndent(v,""," ") - require.NoError(t,err) - t.Logf("\n%s\n---",out) + out, err := json.MarshalIndent(v, "", " ") + require.NoError(t, err) + t.Logf("\n%s\n---", out) }