using System.Linq; using Xunit; namespace Bootstrap.DataAccess.SqlServer { [Collection("SQLServerContext")] public class RolesTest { [Fact] public void SaveRolesByUserId_Ok() { var userId = UserHelper.Retrieves().Where(u => u.UserName == "Admin").FirstOrDefault().Id; Assert.True(RoleHelper.SaveByUserId(userId, RoleHelper.Retrieves().Select(r => r.Id))); } [Fact] public void RetrieveRolesByUserId_Ok() { var userId = UserHelper.Retrieves().Where(u => u.UserName == "Admin").FirstOrDefault().Id; Assert.NotEmpty(RoleHelper.RetrievesByUserId(userId)); } [Fact] public void DeleteRole_Ok() { var role = new Role() { Description = "Role_Desc", RoleName = "UnitTest-Delete" }; Assert.True(RoleHelper.Save(role)); Assert.True(RoleHelper.Delete(RoleHelper.Retrieves().Where(r => r.RoleName == role.RoleName).Select(r => r.Id))); } [Fact] public void SaveRole_Ok() { var role = new Role() { Description = "Role_Desc", RoleName = "UnitTest-Save" }; // insert Assert.True(RoleHelper.Save(role)); // update Assert.True(RoleHelper.Save(role)); // delete Assert.True(RoleHelper.Delete(new string[] { role.Id })); } [Fact] public void RetrieveRolesByMenuId_Ok() { var roleId = RoleHelper.Retrieves().FirstOrDefault(r => r.RoleName == "Administrators").Id; MenuHelper.SaveMenusByRoleId(roleId, MenuHelper.RetrieveAllMenus("Admin").Select(m => m.Id)); var rs = RoleHelper.RetrievesByMenuId(MenuHelper.RetrieveAllMenus("Admin").FirstOrDefault().Id).Where(r => r.Checked == "checked"); Assert.NotEmpty(rs); } [Fact] public void SavaRolesByMenuId_Ok() { var menuId = MenuHelper.RetrieveAllMenus("Admin").FirstOrDefault().Id; Assert.True(RoleHelper.SavaByMenuId(menuId, RoleHelper.Retrieves().Select(r => r.Id))); } [Fact] public void RetrieveRolesByGroupId_Ok() { var id = RoleHelper.Retrieves().FirstOrDefault(r => r.RoleName == "Administrators").Id; GroupHelper.SaveByRoleId(id, GroupHelper.Retrieves().Select(g => g.Id)); Assert.NotEmpty(RoleHelper.RetrievesByGroupId(GroupHelper.Retrieves().Where(g => g.GroupName == "Admin").FirstOrDefault().Id).Where(r => r.Checked == "checked")); } [Fact] public void RetrieveRolesByUserName_Ok() { var id = RoleHelper.Retrieves().FirstOrDefault(r => r.RoleName == "Administrators").Id; UserHelper.SaveByRoleId(id, UserHelper.Retrieves().Select(u => u.Id)); Assert.NotEmpty(RoleHelper.RetrievesByUserName("Admin")); } [Fact] public void RetrieveRolesByUrl_Ok() { Assert.NotEmpty(RoleHelper.RetrievesByUrl("~/Home/Index")); } [Fact] public void SaveByGroupId_Ok() { var gId = GroupHelper.Retrieves().FirstOrDefault(g => g.GroupName == "Admin").Id; RoleHelper.SaveByGroupId(gId, RoleHelper.Retrieves().Where(r => r.RoleName == "Administrators").Select(r => r.Id)); } } }