public void Should_return_true_if_app_folder_is_valid() { var folder = "MyApp"; var appRepositoryMock = new Mock <IAppRepository>(); var sut = new AppRules(appRepositoryMock.Object); var actual = sut.IsAppFolderValid(folder); Assert.AreEqual(true, actual); }
public void Should_return_true_if_app_name_is_unique() { var name = "My App"; var appRepositoryMock = new Mock <IAppRepository>(); appRepositoryMock.Setup(x => x.GetByName(name)).Returns((App)null); var sut = new AppRules(appRepositoryMock.Object); var actual = sut.IsAppNameUnique(name); Assert.AreEqual(true, actual); }
public void Should_return_true_if_app_id_is_unique() { var id = Guid.NewGuid(); var appRepositoryMock = new Mock <IAppRepository>(); appRepositoryMock.Setup(x => x.GetById(id)).Returns((App)null); var sut = new AppRules(appRepositoryMock.Object); var actual = sut.IsAppIdUnique(id); Assert.AreEqual(true, actual); }
public void Should_return_true_if_app_exists() { var id = Guid.NewGuid(); var appRepositoryMock = new Mock <IAppRepository>(); appRepositoryMock.Setup(x => x.GetById(id)).Returns(new App()); var sut = new AppRules(appRepositoryMock.Object); var actual = sut.DoesAppExist(id); Assert.AreEqual(true, actual); }
public void Should_return_true_if_app_folder_is_unique() { var folder = "MyApp"; var appRepositoryMock = new Mock <IAppRepository>(); appRepositoryMock.Setup(x => x.GetByFolder(folder)).Returns((App)null); var sut = new AppRules(appRepositoryMock.Object); var actual = sut.IsAppFolderUnique(folder); Assert.AreEqual(true, actual); }
private async Task <ClaimsIdentity> AddClaims(ClaimsIdentity userIdentity) { userIdentity.AddClaim(new Claim(AppClaimTypes.FullName, FirstName + " " + LastName)); userIdentity.AddClaim(new Claim(AppClaimTypes.FirstName, FirstName)); userIdentity.AddClaim(new Claim(AppClaimTypes.LastName, LastName)); if (!String.IsNullOrEmpty(AdvertiserId)) { userIdentity.AddClaim(new Claim(AppClaimTypes.AdvertiserId, AdvertiserId)); } if (!String.IsNullOrEmpty(ContentSourceId)) { userIdentity.AddClaim(new Claim(AppClaimTypes.ContentSourceId, ContentSourceId)); } //get roles from database var ctx = new ApplicationDbContext(); var roleManager = new ApplicationRoleManager(ctx); var roleIds = Roles.Select(i => i.RoleId).ToList(); var dbRoleNames = await roleManager.Roles.Include(m => m.ApplicationRules).Where(m => roleIds.Contains(m.Id)).ToListAsync(); //add roles as claims foreach (var role in dbRoleNames) { userIdentity.AddClaim(new Claim(AppClaimTypes.Role, role.Name)); } //get associated rules var rules = dbRoleNames.SelectMany(m => m.ApplicationRules).ToList(); if (dbRoleNames.Any(i => i.Name == AppRoles.SystemAdmin)) { rules = await ctx.ApplicationRules.ToListAsync(); } foreach (var rule in rules) { userIdentity.AddClaim(new Claim(AppClaimTypes.Rule, AppRules.Join(rule.Qualifier, rule.Name))); } return(userIdentity); }