public void TestGrantPermission() { int perm = 0; PermissionCalculator calculator = new PermissionCalculator(); //首次授权 var result = calculator.GrantPermission(perm, Model.Permission.PermissionMask.Add); var expected = (int)Model.Permission.PermissionMask.Add; Assert.AreEqual(expected, result); //Console.WriteLine(result); //授予其他权限 result = calculator.GrantPermission(result, Model.Permission.PermissionMask.Delete); expected = expected + (int)Model.Permission.PermissionMask.Delete; Assert.AreEqual(expected, result); //重复给相同权限 result = calculator.GrantPermission(result, Model.Permission.PermissionMask.Delete); Assert.AreEqual(expected, result); result = calculator.GrantPermission(result, Model.Permission.PermissionMask.Edit); expected = expected + (int)Model.Permission.PermissionMask.Edit; Assert.AreEqual(expected, result); }
public override void OnActionExecuting(HttpActionContext actionContext) { var calc = new PermissionCalculator("500"); if (!calc.ValidatePermission()) { throw new Exception(); } }
public void TestHasPermission() { int perm = 103; PermissionCalculator calculator = new PermissionCalculator(); var result = calculator.HasPermission(perm, Model.Permission.PermissionMask.Add); Assert.AreEqual(true, result); Console.WriteLine(result); perm = -1; result = calculator.HasPermission(perm, Model.Permission.PermissionMask.Add); Assert.AreEqual(true, result); }
public void TestRevokePermission() { int perm = 255; PermissionCalculator calculator = new PermissionCalculator(); var result = calculator.RevokePermission(perm, Model.Permission.PermissionMask.Add); var expected = perm - (int)Model.Permission.PermissionMask.Add; Assert.AreEqual(expected, result); result = calculator.RevokePermission(result, Model.Permission.PermissionMask.Add); Assert.AreEqual(expected, result); result = calculator.RevokePermission(result, Model.Permission.PermissionMask.Delete); expected = expected - (int)Model.Permission.PermissionMask.Delete; Assert.AreEqual(expected, result); }
public void Remove(Permission permission) { _value = PermissionCalculator.Remove(_value, permission); }
public void Add(Permission permission) { _value = PermissionCalculator.Add(_value, permission); }
public bool Has(Permission permission) { return(PermissionCalculator.Has(_value, permission)); }