mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-12-02 11:44:41 +08:00
#19256: Performing check on Create Role to make sure it does not duplicate on create
Work Item: 19256 --HG-- branch : 1.x
This commit is contained in:
@@ -86,5 +86,20 @@ namespace Orchard.Tests.Modules.Roles.Services {
|
|||||||
Assert.That(result.Count(), Is.EqualTo(4));
|
Assert.That(result.Count(), Is.EqualTo(4));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void ShouldNotCreateARoleTwice() {
|
||||||
|
var service = _container.Resolve<IRoleService>();
|
||||||
|
service.CreateRole("one");
|
||||||
|
service.CreateRole("two");
|
||||||
|
service.CreateRole("one");
|
||||||
|
|
||||||
|
ClearSession();
|
||||||
|
|
||||||
|
var roles = service.GetRoles();
|
||||||
|
Assert.That(roles.Count(), Is.EqualTo(2));
|
||||||
|
Assert.That(roles, Has.Some.Property("Name").EqualTo("one"));
|
||||||
|
Assert.That(roles, Has.Some.Property("Name").EqualTo("two"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,6 +56,9 @@ namespace Orchard.Roles.Services {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void CreateRole(string roleName) {
|
public void CreateRole(string roleName) {
|
||||||
|
if (GetRoleByName(roleName) != null)
|
||||||
|
return;
|
||||||
|
|
||||||
_roleRepository.Create(new RoleRecord { Name = roleName });
|
_roleRepository.Create(new RoleRecord { Name = roleName });
|
||||||
TriggerSignal();
|
TriggerSignal();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user