public async void CreateUsertThanTryToLoginWithProvidedCredentitials() { DocDbContext db = TestDbContext.GetDocDbContext(); UserService us = new UserService(db); us.AddUser(new User { Login = "******", Password = "******", Name = "name1", Surname = "surname1" }); AccountController ac = new AccountController(new Mock <ILogger <AccountController> >().Object, us, null, null); var urlHelperFactory = new Mock <IUrlHelperFactory>(); //urlHelperFactory // .Setup(_ => _.SignInAsync(It.IsAny<HttpContext>(), It.IsAny<string>(), It.IsAny<ClaimsPrincipal>(), It.IsAny<AuthenticationProperties>())) // .Returns(Task.FromResult((object)null)); var authServiceMock = new Mock <IAuthenticationService>(); authServiceMock .Setup(_ => _.SignInAsync(It.IsAny <HttpContext>(), It.IsAny <string>(), It.IsAny <ClaimsPrincipal>(), It.IsAny <AuthenticationProperties>())) .Returns(Task.FromResult((object)null)); var serviceProviderMock = new Mock <IServiceProvider>(); serviceProviderMock .Setup(_ => _.GetService(typeof(IAuthenticationService))) .Returns(authServiceMock.Object); serviceProviderMock .Setup(_ => _.GetService(typeof(IUrlHelperFactory))) .Returns(urlHelperFactory.Object); //serviceProviderMock // .Setup(_ => _.GetService(typeof(ITempDataDictionaryFactory))) // .Returns(new Mock<ITempDataDictionaryFactory>().Object); ac.ControllerContext = new ControllerContext { HttpContext = new DefaultHttpContext { RequestServices = serviceProviderMock.Object } }; var res = await ac.Login("login1", "pass1"); output.WriteLine(res.GetType().ToString()); Assert.NotNull(res); Assert.Equal(typeof(RedirectToActionResult), res.GetType()); Assert.True(true); }
public static DocDbContext GetDocDbContext() { var options = new DbContextOptionsBuilder <DocDbContext>() .UseInMemoryDatabase("in_mem_Test") .Options; DocDbContext db = new DocDbContext(options); db.Database.EnsureDeleted(); db.Database.EnsureCreated(); return(db); }
async public void AddUserToDatabaseThenFindHimByFunctionThenRemoveHimAndTryToFindAgain() { DocDbContext db = TestDbContext.GetDocDbContext(); UserService us = new UserService(db); us.AddUser(new User { Login = "******", Password = "******", Name = "name2", Surname = "surname2" }); us.AddUser(new User { Login = "******", Password = "******", Name = "name3", Surname = "surname3" }); us.AddUser(new User { Login = "******", Password = "******", Name = "name4", Surname = "surname4" }); int userCount = await db.Users.CountAsync(); Assert.Equal(3, userCount); us.AddUser(new User { Login = "******", Password = "******", Name = "name6", Surname = "surname6" }); User u = us.GetUserByLogin("login6"); Assert.NotNull(u); Assert.True(us.RemoveUser(u.UserId)); User u1 = us.GetUserByLogin("login6"); Assert.Null(u1); }
public void GetUserFromUserListByLoginAndCheckIfAllFieldsAreValidAndPasswordIsHashed() { DocDbContext db = TestDbContext.GetDocDbContext(); UserService us = new UserService(db); us.AddUser(new User { Login = "******", Password = "******", Name = "name1", Surname = "surname1" }); User user = us.GetUserByLogin("login1"); Console.WriteLine(user.Password); Assert.NotNull(user); Assert.Equal("login1", user.Login); Assert.Equal(User.HashPassword("pass1"), user.Password); Assert.Equal("name1", user.Name); Assert.Equal("surname1", user.Surname); }
public DocController(DocDbContext context) { _context = context; }