public void RegisterUser(string username, string password, string email) { if (String.IsNullOrWhiteSpace(username)) { throw new ArgumentNullException("username", "Username is required."); } if (String.IsNullOrWhiteSpace(password)) { throw new ArgumentNullException("password", "Password is required."); } if (String.IsNullOrWhiteSpace(email)) { throw new ArgumentNullException("email", "Email address is required."); } if (!IsUsernameAvailable(username)) { throw new UsernameExistsException(String.Format("The username {0} already exists.", username)); } var user = new User { Username = username, EmailAddress = email, PasswordHash = _hashingStrategy.HashPassword(password) }; _userRepository.Insert(user); _userRepository.SaveChanges(); }
public void Udate(User entity) { var user = Get(entity.Id); user.Username = entity.Username; user.EmailAddress = entity.EmailAddress; user.PasswordHash = entity.PasswordHash; user.ModifiedOn = DateTime.UtcNow; }
public void ShouldHaveMethodToGetUserById() { var expected = new User { Id = 5, Username = "******" }; var mockCommand = MockHelpers.CreateMockDbCommandForQuery<User>(new List<User> { expected }); var mockUnitOfWOrk = new Mock<IUnitOfWork>(); mockUnitOfWOrk.Setup(uow => uow.CreateCommand()).Returns(mockCommand.Object); var userRepository = new UserRepository(mockUnitOfWOrk.Object); var actual = userRepository.Get(5); Assert.AreEqual(expected.Id, actual.Id); Assert.AreEqual(expected.Username, actual.Username); Assert.AreEqual(1, mockCommand.Object.Parameters.Count); }
public void Insert(User entity) { using (var command = UnitOfWork.CreateCommand()) { command.CommandText = @"INSERT INTO Users(Username, EmailAddress, PasswordHash) VALUES(@Username, @EmailAddress, @PasswordHash); SELECT @@IDENTITY AS Id;"; command.AddParamaters(new { Username = entity.Username, EmailAddress = entity.EmailAddress, PasswordHash = entity.PasswordHash }); var ret = command.ExecuteScalar().ToString(); int id; Int32.TryParse(ret, out id); entity.Id = id; } }
public FakeUserRepository() { var baseUser = new User { Username = "******", EmailAddress = "*****@*****.**", CreatedOn = DateTime.UtcNow, Id = 1, FailedLoginAttempts = 0, PasswordHash = "test" }; _users = new List<User> { baseUser }; }
public void Udate(User entity) { using (var command = UnitOfWork.CreateCommand()) { command.CommandText = @"UPDATE Users SET Username = @Username, EmailAddress = @EmailAddress, PasswordHash = @PasswordHash, ModifiedOn = GETUTCDATE() WHERE Id = @id"; command.AddParamaters(new { Username = entity.Username, EmailAddress = entity.EmailAddress, PasswordHash = entity.PasswordHash, id = entity.Id }); command.ExecuteNonQuery(); } }
public void Insert(User entity) { entity.Id = _users.Max(u => u.Id) + 1; _users.Add(entity); }