public static UserModel Map(User user) { var model = new UserModel { Id = user.Id, Email = user.Email, FullName = user.FullName, RoleName = user.RoleName, Language = user.Language, IsActive = user.IsActive, }; return model; }
public void authenticate_should_return_user_result() { // Arrange var user = new User { FullName = "test", Email = "*****@*****.**", RoleId = SetRole.User.Value, Language = Thread.CurrentThread.CurrentUICulture.Name }; var userRepository = new Mock<IRepository<User>>(); // Act var userService = new UserService(userRepository.Object); var userId = userService.Create(user.FullName, user.Email, "password", user.RoleId, user.Language); // Assert userRepository.Verify(x => x.Create(It.IsAny<User>()), Times.Once); userRepository.Verify(x => x.SaveChanges(), Times.AtLeastOnce); Assert.NotNull(userId); }
public async Task<long?> Create(string fullName, string email, string password, int roleId, string language) { var img = GravatarHelper.GetGravatarURL(email, GRAVATAR_IMG_SIZE); var user = new User { Email = email, FullName = fullName, PasswordHash = BCrypt.Net.BCrypt.HashPassword(password), ImageUrl = img, RoleId = roleId, RoleName = SetRole.GetString(roleId), IsActive = true, Language = language }; _userRepo.Create(user); if (!_userRepo.SaveChanges()) return null; return await Task.FromResult(user.Id); }
public async void authenticate_should_return_with_bool() { // Arrange var user = new User { FullName = "test", Email = "*****@*****.**", RoleId = SetRole.User.Value, PasswordHash = BCrypt.Net.BCrypt.HashPassword("password"), Language = Thread.CurrentThread.CurrentUICulture.Name }; var userRepository = new Mock<IRepository<User>>(); userRepository.Setup(x => x.FindOne(It.IsAny<Expression<Func<User, bool>>>())).Returns(user); userRepository.Setup(x => x.Update(user)).Returns(user); // Act var sut = new UserServiceBuilder().WithUserRespository(userRepository.Object) .Build(); var result = await sut.Authenticate(user.Email, user.PasswordHash); // Assert Assert.NotNull(result); Assert.IsInstanceOf<IUserService>(sut); Assert.IsAssignableFrom<bool>(result); userRepository.Verify(x => x.FindOne(It.IsAny<Expression<Func<User, bool>>>()), Times.Once); userRepository.Verify(x => x.Update(It.IsAny<User>()), Times.Once); userRepository.Verify(x => x.SaveChanges(), Times.AtLeastOnce); }
public async void create_should_return_user_id() { // Arrange var user = new User { FullName = "test", Email = "*****@*****.**", RoleId = SetRole.User.Value, Language = Thread.CurrentThread.CurrentUICulture.Name }; var userRepository = new Mock<IRepository<User>>(); userRepository.Setup(x => x.Create(user)).Returns(user); userRepository.Setup(x => x.SaveChanges()).Returns(true); // Act var sut = new UserServiceBuilder().WithUserRespository(userRepository.Object) .Build(); var userId = await sut.Create(user.FullName, user.Email, "password", user.RoleId, user.Language); // Assert Assert.NotNull(userId); Assert.IsInstanceOf<IUserService>(sut); Assert.IsAssignableFrom<long>(userId); userRepository.Verify(x => x.Create(It.IsAny<User>()), Times.Once); userRepository.Verify(x => x.SaveChanges(), Times.AtLeastOnce); }