Add test, JavascriptSDK 1.7.1 rest format not as expected
JavascriptSDK 1.7.1 use serverUrl/classes/_Role directly. So move validation from RolesRouter to ClassesRouter.
This commit is contained in:
@@ -59,17 +59,17 @@ describe('Parse Role testing', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it("should recursively load roles", (done) => {
|
it("should recursively load roles", (done) => {
|
||||||
|
|
||||||
var rolesNames = ["FooRole", "BarRole", "BazRole"];
|
var rolesNames = ["FooRole", "BarRole", "BazRole"];
|
||||||
|
|
||||||
var createRole = function(name, parent, user) {
|
var createRole = function(name, parent, user) {
|
||||||
var role = new Parse.Object("_Role")
|
var role = new Parse.Object("_Role")
|
||||||
role.set("name", name);
|
role.set("name", name);
|
||||||
if (user) {
|
if (user) {
|
||||||
var users = role.relation('users');
|
var users = role.relation('users');
|
||||||
users.add(user);
|
users.add(user);
|
||||||
}
|
}
|
||||||
if (parent) {
|
if (parent) {
|
||||||
role.relation('roles').add(parent);
|
role.relation('roles').add(parent);
|
||||||
@@ -78,7 +78,7 @@ describe('Parse Role testing', () => {
|
|||||||
}
|
}
|
||||||
var roleIds = {};
|
var roleIds = {};
|
||||||
createTestUser().then( (user) => {
|
createTestUser().then( (user) => {
|
||||||
|
|
||||||
return createRole(rolesNames[0], null, null).then( (aRole) => {
|
return createRole(rolesNames[0], null, null).then( (aRole) => {
|
||||||
roleIds[aRole.get("name")] = aRole.id;
|
roleIds[aRole.get("name")] = aRole.id;
|
||||||
return createRole(rolesNames[1], aRole, null);
|
return createRole(rolesNames[1], aRole, null);
|
||||||
@@ -102,5 +102,16 @@ describe('Parse Role testing', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("_Role object should not save without name.", (done) => {
|
||||||
|
var role = new Parse.Role();
|
||||||
|
role.save(null,{useMasterKey:true})
|
||||||
|
.then((r) => {
|
||||||
|
fail("_Role object should not save without name.");
|
||||||
|
}, (error) => {
|
||||||
|
expect(error.code).toEqual(135);
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -81,6 +81,9 @@ export class ClassesRouter extends PromiseRouter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
handleCreate(req) {
|
handleCreate(req) {
|
||||||
|
if(req.params.className === '_Role' && req.body && !req.body.name){
|
||||||
|
throw new Parse.Error(135, 'Role names must be specified.');
|
||||||
|
}
|
||||||
return rest.create(req.config, req.auth, req.params.className, req.body);
|
return rest.create(req.config, req.auth, req.params.className, req.body);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -16,9 +16,6 @@ export class RolesRouter extends ClassesRouter {
|
|||||||
|
|
||||||
handleCreate(req) {
|
handleCreate(req) {
|
||||||
req.params.className = '_Role';
|
req.params.className = '_Role';
|
||||||
if(req.body && !req.body.name){
|
|
||||||
throw new Parse.Error(135, 'Role names must be specified.');
|
|
||||||
}
|
|
||||||
return super.handleCreate(req);
|
return super.handleCreate(req);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user