public void Authenticate_GetFromCache_Test() { // Arrange string testUsername = "******"; string testPassword = "******"; var user = _dataFixture.GetUser(); List <User> cachedUserList = new List <User> { user }; _dataFixture.GetMocks <User>(out var mockRepository, out var mockCacheManager, out var mockOptions); mockCacheManager .Setup(cache => cache.GetFromCacheAsync <List <User> >(It.IsAny <string>(), It.IsAny <CancellationToken>())) .ReturnsAsync(cachedUserList); var authFacade = new AuthenticationFacade(mockRepository.Object, mockCacheManager.Object, mockOptions.Object); // Act var result = authFacade.Authenticate(testUsername, testPassword, CancellationToken.None).Result; // Assert Assert.True(result); }
public void Authenticate_UserDoesNotExistInCacheNorInDb_Test() { // Arrange string testUsername = "******"; string testPassword = "******"; User user = null; List <User> cachedUserList = null; _dataFixture.GetMocks <User>(out var mockRepository, out var mockCacheManager, out var mockOptions); mockRepository .Setup(repo => repo.GetAsync <User>(user => user.Username == testUsername && user.Password == testPassword, CancellationToken.None)) .ReturnsAsync(user); mockCacheManager .Setup(cache => cache.GetFromCacheAsync <List <User> >(It.IsAny <string>(), It.IsAny <CancellationToken>())) .ReturnsAsync(cachedUserList); var authFacade = new AuthenticationFacade(mockRepository.Object, mockCacheManager.Object, mockOptions.Object); // Act var result = authFacade.Authenticate(testUsername, testPassword, CancellationToken.None).Result; // Assert Assert.False(result); }
public AuthController(IConfiguration config, IEmailConfiguration EmailConfiguration)//, UserManager<IdentityUser> _userManager, IEmailSender _emailSender, SignInManager<IdentityUser> _signInManager) { //userManager = _userManager; //emailSender = _emailSender; //signInManager = _signInManager; _emailConfiguration = EmailConfiguration; facade = new AuthenticationFacade();// (userManager, emailSender, signInManager); admin_url = config.GetSection("ADMIN_url").Value; ui_url = config.GetSection("UI_url").Value; }
public AuthenticationMiddleware(RequestDelegate next)//,UserManager<IdentityUser> _userManager, IEmailSender _emailSender, SignInManager<IdentityUser> _signInManager) { var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true); IConfigurationRoot configuration = builder.Build(); IsProduction = Convert.ToBoolean(configuration.GetSection("IsProduction").Value.ToString()); facade = new AuthenticationFacade(); this.next = next; }
public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } var result = await AuthenticationFacade.AuthenticateAsync(Request, Session, new DaUserAccountCredentialsInfo() { Username = model.Username, Password = model.Password, RememberUser = model.RememberMe }); /* * Calling the method synchronously * var result = Ejyle.DevAccelerate.Core.DaAsyncHelper.RunSync<SignInStatus>(() => AuthenticationFacade.AuthenticateAsync(Request, Session, new DaUserAccountCredentialsInfo())); */ switch (result) { case SignInStatus.Success: return(RedirectToLocal(returnUrl)); case SignInStatus.LockedOut: return(View("Lockout")); case SignInStatus.RequiresVerification: return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl, model.RememberMe })); case SignInStatus.Failure: default: ModelState.AddModelError("", "Invalid login attempt."); return(View(model)); } }