MCPcopy
hub / github.com/ory/kratos / TestManager

Function TestManager

continuity/manager_test.go:42–331  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

40}
41
42func TestManager(t *testing.T) {
43 _, reg := pkg.NewFastRegistryWithMocks(t,
44 configx.WithValues(testhelpers.DefaultIdentitySchemaConfig("file://../test/stub/identity/empty.schema.json")),
45 )
46
47 i := identity.NewIdentity("")
48 require.NoError(t, reg.PrivilegedIdentityPool().CreateIdentity(t.Context(), i))
49
50 newServer := func(t *testing.T, p continuity.Manager, tc *persisterTestCase) *httptest.Server {
51 writer := herodot.NewJSONWriter(logrusx.New("", ""))
52 router := http.NewServeMux()
53 router.HandleFunc("PUT /{name}", func(w http.ResponseWriter, r *http.Request) {
54 if err := p.Pause(r.Context(), w, r, r.PathValue("name"), tc.ro...); err != nil {
55 writer.WriteError(w, r, err)
56 return
57 }
58 w.WriteHeader(http.StatusNoContent)
59 })
60
61 router.HandleFunc("POST /{name}", func(w http.ResponseWriter, r *http.Request) {
62 if err := p.Pause(r.Context(), w, r, r.PathValue("name"), tc.ro...); err != nil {
63 writer.WriteError(w, r, err)
64 return
65 }
66
67 c, err := p.Continue(r.Context(), w, r, r.PathValue("name"), tc.wo...)
68 if err != nil {
69 writer.WriteError(w, r, err)
70 return
71 }
72 writer.Write(w, r, c)
73 })
74
75 router.HandleFunc("GET /{name}", func(w http.ResponseWriter, r *http.Request) {
76 c, err := p.Continue(r.Context(), w, r, r.PathValue("name"), tc.ro...)
77 if err != nil {
78 writer.WriteError(w, r, err)
79 return
80 }
81 writer.Write(w, r, c)
82 })
83
84 router.HandleFunc("DELETE /{name}", func(w http.ResponseWriter, r *http.Request) {
85 err := p.Abort(r.Context(), w, r, r.PathValue("name"))
86 if err != nil {
87 writer.WriteError(w, r, err)
88 return
89 }
90 w.WriteHeader(http.StatusNoContent)
91 })
92
93 ts := httptest.NewServer(router)
94 t.Cleanup(ts.Close)
95 return ts
96 }
97
98 newClient := func() *http.Client {
99 return &http.Client{Jar: testhelpers.EasyCookieJar(t, nil)}

Callers

nothing calls this directly

Calls 15

NewFastRegistryWithMocksFunction · 0.92
NewIdentityFunction · 0.92
EasyCookieJarFunction · 0.92
NewUUIDFunction · 0.92
NewTestHTTPRequestFunction · 0.92
WithPayloadFunction · 0.92
WithIdentityFunction · 0.92
WriteHeaderMethod · 0.80
ContainsMethod · 0.80
CreateIdentityMethod · 0.65

Tested by

no test coverage detected