Test the userCtx name parameter with a list
(t *testing.T)
| 305 | |
| 306 | // Test the userCtx name parameter with a list |
| 307 | func TestCheckUserArray(t *testing.T) { |
| 308 | ctx := base.TestCtx(t) |
| 309 | mapper := NewChannelMapper(ctx, `function(doc, oldDoc) { |
| 310 | requireUser(doc.owners); |
| 311 | }`, 0) |
| 312 | var sally = map[string]interface{}{"name": "sally", "channels": []string{}} |
| 313 | res, err := mapper.MapToChannelsAndAccess(ctx, parse(t, `{"owners": ["sally", "joe"]}`), `{}`, emptyMetaMap(), sally) |
| 314 | assert.NoError(t, err, "MapToChannelsAndAccess failed") |
| 315 | assert.Equal(t, nil, res.Rejection) |
| 316 | |
| 317 | var linus = map[string]interface{}{"name": "linus", "channels": []string{}} |
| 318 | res, err = mapper.MapToChannelsAndAccess(ctx, parse(t, `{"owners": ["sally", "joe"]}`), `{}`, emptyMetaMap(), linus) |
| 319 | assert.NoError(t, err, "MapToChannelsAndAccess failed") |
| 320 | assert.Equal(t, base.HTTPErrorf(403, base.SyncFnErrorWrongUser), res.Rejection) |
| 321 | |
| 322 | res, err = mapper.MapToChannelsAndAccess(ctx, parse(t, `{"owners": ["sally"]}`), `{}`, emptyMetaMap(), nil) |
| 323 | assert.NoError(t, err, "MapToChannelsAndAccess failed") |
| 324 | assert.Equal(t, nil, res.Rejection) |
| 325 | } |
| 326 | |
| 327 | // Test the userCtx role parameter |
| 328 | func TestCheckRole(t *testing.T) { |
nothing calls this directly
no test coverage detected