MCPcopy Create free account
hub / github.com/couchbase/sync_gateway / TestRequireUser

Function TestRequireUser

channels/sync_runner_test.go:22–34  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

20)
21
22func TestRequireUser(t *testing.T) {
23 ctx := base.TestCtx(t)
24 const funcSource = `function(doc, oldDoc) { requireUser(oldDoc._names) }`
25 runner, err := NewSyncRunner(ctx, funcSource, 0)
26 require.NoError(t, err)
27 var result interface{}
28 result, _ = runner.Call(ctx, parse(t, `{}`), parse(t, `{"_names": "alpha"}`), emptyMetaMap(), parse(t, `{"name": "alpha"}`))
29 assertNotRejected(t, result)
30 result, _ = runner.Call(ctx, parse(t, `{}`), parse(t, `{"_names": ["beta", "gamma"]}`), emptyMetaMap(), parse(t, `{"name": "beta"}`))
31 assertNotRejected(t, result)
32 result, _ = runner.Call(ctx, parse(t, `{}`), parse(t, `{"_names": ["delta"]}`), emptyMetaMap(), parse(t, `{"name": "beta"}`))
33 assertRejected(t, result, base.HTTPErrorf(http.StatusForbidden, base.SyncFnErrorWrongUser))
34}
35
36func TestRequireRole(t *testing.T) {
37 ctx := base.TestCtx(t)

Callers

nothing calls this directly

Calls 7

TestCtxFunction · 0.92
HTTPErrorfFunction · 0.92
NewSyncRunnerFunction · 0.85
parseFunction · 0.85
emptyMetaMapFunction · 0.85
assertNotRejectedFunction · 0.85
assertRejectedFunction · 0.85

Tested by

no test coverage detected