public void Can_retrieve_available_system_role_permissions() { var perms = new SystemRolePermissions(); perms.Grant(SystemPermission.ManageSupplierAccounts); perms.Grant(SystemPermission.ViewFinancialDetails); Assert.IsTrue(perms.Has(SystemPermission.ManageSupplierAccounts)); Assert.IsFalse(perms.Has(SystemPermission.CheckOutDocuments)); }
public void Can_add_a_system_role_permission() { var perms = new SystemRolePermissions(); perms.Grant(SystemPermission.Administrator); Assert.IsTrue(perms.Has(SystemPermission.Administrator)); }
public void Administrator_system_role_permission_overrides_others() { var perms = new SystemRolePermissions(); perms.Grant(SystemPermission.Administrator); Assert.IsTrue(perms.Has(SystemPermission.ManageSupplierAccounts)); Assert.IsTrue(perms.Has(SystemPermission.ManageDocuments)); Assert.IsTrue(perms.Has(SystemPermission.ManageCustomerAccounts)); Assert.IsTrue(perms.Has(SystemPermission.CheckOutDocuments)); Assert.IsTrue(perms.Has(SystemPermission.ManageParts)); Assert.IsTrue(perms.Has(SystemPermission.ViewFinancialDetails)); }
private static void CreateAdminAccount() { using (var db = new ngenDbContext()) { var emp = db.Employees.SingleOrDefault(e => e.UserName == "mr_robot"); if (emp != null) { return; } var role = new SystemRole { Name = "BUILTIN_ADMIN", Description = "Built in administrator account. Has complete control of the entire system!" }; var perms = new SystemRolePermissions(); perms.Grant(SystemPermission.Administrator); role.Permissions = perms.ToBytes(); var person = new Person { FirstName = "System", LastName = "Administrator", DateOfBirth = DateTime.Today }; var employee = new Employee { UserName = "******", Password = new BCryptPasswordProvider().HashPassword("correcthorsebatterystaple"), IsActive = true, SystemRole = role, Person = person }; db.SystemRoles.Add(role); db.People.Add(person); db.Employees.Add(employee); db.SaveChanges(); Console.WriteLine(); Console.WriteLine("Admin account created"); } }