MCPcopy
hub / github.com/parse-community/parse-server / testLoadRoles

Function testLoadRoles

spec/ParseRole.spec.js:9–47  ·  view source on GitHub ↗
(config, done)

Source from the content-addressed store, hash-verified

7const Config = require('../lib/Config');
8
9function testLoadRoles(config, done) {
10 const rolesNames = ['FooRole', 'BarRole', 'BazRole'];
11 const roleIds = {};
12 createTestUser()
13 .then(user => {
14 // Put the user on the 1st role
15 return createRole(rolesNames[0], null, user)
16 .then(aRole => {
17 roleIds[aRole.get('name')] = aRole.id;
18 // set the 1st role as a sibling of the second
19 // user will should have 2 role now
20 return createRole(rolesNames[1], aRole, null);
21 })
22 .then(anotherRole => {
23 roleIds[anotherRole.get('name')] = anotherRole.id;
24 // set this role as a sibling of the last
25 // the user should now have 3 roles
26 return createRole(rolesNames[2], anotherRole, null);
27 })
28 .then(lastRole => {
29 roleIds[lastRole.get('name')] = lastRole.id;
30 const auth = new Auth({ config, isMaster: true, user: user });
31 return auth._loadRoles();
32 });
33 })
34 .then(
35 roles => {
36 expect(roles.length).toEqual(3);
37 rolesNames.forEach(name => {
38 expect(roles.indexOf('role:' + name)).not.toBe(-1);
39 });
40 done();
41 },
42 function () {
43 fail('should succeed');
44 done();
45 }
46 );
47}
48
49const createRole = function (name, sibling, user) {
50 const role = new Parse.Role(name, new Parse.ACL());

Callers 1

ParseRole.spec.jsFile · 0.85

Calls 4

createTestUserFunction · 0.85
createRoleFunction · 0.85
failFunction · 0.85
getMethod · 0.45

Tested by

no test coverage detected