public async Task RoleReadAndWrite() { LCUser currentUser = await LCUser.Login(TestPhone, TestPhone); string name = $"role_{DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()}"; LCACL roleACL = new LCACL(); roleACL.SetUserReadAccess(currentUser, true); roleACL.SetUserWriteAccess(currentUser, true); LCRole role = LCRole.Create(name, roleACL); role.AddRelation("users", currentUser); await role.Save(); account = new Account(); LCACL acl = new LCACL(); acl.SetRoleReadAccess(role, true); acl.SetRoleWriteAccess(role, true); account.ACL = acl; await account.Save(); Assert.IsTrue(acl.GetRoleReadAccess(role)); Assert.IsTrue(acl.GetRoleWriteAccess(role)); }
/// <summary> /// Constructs a LCRole with a name and a LCACL. /// </summary> /// <param name="name"></param> /// <param name="acl"></param> /// <returns></returns> public static LCRole Create(string name, LCACL acl) { LCRole role = new LCRole() { Name = name, ACL = acl }; return(role); }
public async Task NewRole() { LCUser currentUser = await LCUser.Login("game", "play"); LCACL acl = new LCACL(); acl.PublicReadAccess = true; acl.SetUserWriteAccess(currentUser, true); string name = $"role_{DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()}"; LCRole role = LCRole.Create(name, acl); role.AddRelation("users", currentUser); await role.Save(); }
public async Task Query() { LCQuery <LCRole> query = LCRole.GetQuery(); List <LCRole> list = await query.Find(); list.ForEach(item => { TestContext.WriteLine($"{item.ObjectId} : {item.Name}"); Assert.NotNull(item.ObjectId); Assert.NotNull(item.Name); TestContext.WriteLine(item.Roles.GetType()); TestContext.WriteLine(item.Users.GetType()); Assert.IsTrue(item.Roles is LCRelation <LCRole>); Assert.IsTrue(item.Users is LCRelation <LCUser>); }); }
public async Task Query() { LCQuery <LCRole> query = LCRole.GetQuery(); ReadOnlyCollection <LCRole> results = await query.Find(); foreach (LCRole item in results) { TestContext.WriteLine($"{item.ObjectId} : {item.Name}"); Assert.NotNull(item.ObjectId); Assert.NotNull(item.Name); TestContext.WriteLine(item.Roles.GetType()); TestContext.WriteLine(item.Users.GetType()); Assert.IsTrue(item.Roles is LCRelation <LCRole>); Assert.IsTrue(item.Users is LCRelation <LCUser>); } }
public async Task RoleReadAndWrite() { LCQuery <LCRole> query = LCRole.GetQuery(); LCRole owner = await query.Get("5e1440cbfc36ed006add1b8d"); LCObject account = new LCObject("Account"); LCACL acl = new LCACL(); acl.SetRoleReadAccess(owner, true); acl.SetRoleWriteAccess(owner, true); account.ACL = acl; await account.Save(); Assert.IsTrue(acl.GetRoleReadAccess(owner)); Assert.IsTrue(acl.GetRoleWriteAccess(owner)); }