public void CanDeleteUserUsingId() { var store = Global.GetInMemoryStore(); // Setup var user = GetGenericUser(); UserRepository userRepository = new UserRepository(store); // Act userRepository.SaveUser(user); // Assert using (var session = store.OpenSession()) { User savedUser = session.Load<User>(user.Id); Assert.IsNotNull(savedUser); userRepository.DeleteUser(user.Id); } using (var session = store.OpenSession()) { User deletedUser = session.Load<User>(user.Id); Assert.IsNull(deletedUser); } }
public void EmailsMustBeUnique() { var store = Global.GetInMemoryStore(); // Setup User user1 = GetGenericUser(); User user2 = GetGenericUser(); UserRepository userRepository = new UserRepository(store); // Act userRepository.SaveUser(user1); userRepository.SaveUser(user2); // Assert }
public void PasswordGetsHashed() { var store = Global.GetInMemoryStore(); // Setup User user = GetGenericUser(); string hashedPassword = Convert.ToBase64String(MD5.Create().ComputeHash(Encoding.UTF8.GetBytes(user.Password))); UserRepository userRepository = new UserRepository(store); // Act userRepository.SaveUser(user); // Assert using (var session = store.OpenSession()) { User savedUser = session.Load<User>(user.Id); Assert.IsNotNull(savedUser); Assert.AreEqual(hashedPassword, savedUser.Password); } }
public void SaveUserReturnsUserId() { // Setup IDocumentStore store = Global.GetInMemoryStore(); UserRepository repository = new UserRepository(store); User user = new User() { Email = "email", Password = "******" }; // Act repository.SaveUser(user); // Assert Assert.IsNotNullOrEmpty(user.Id); }
public void GetUserByIdThrowExceptionOnNull() { var store = Global.GetInMemoryStore(); // Setup var repository = new UserRepository(store); // Act repository.GetUserById(""); }
public void GetUserByIdReturnsUser() { var store = Global.GetInMemoryStore(); // Setup var repository = new UserRepository(store); User user = GetGenericUser(); repository.SaveUser(user); User queryUser = new User() { Email = "*****@*****.**", Password = "******" }; repository.SaveUser(queryUser); string userId = queryUser.Id; user = GetGenericUser(); user.Email = "*****@*****.**"; repository.SaveUser(user); // Act var result = repository.GetUserById(userId); //Assert Assert.IsNotNull(result.User); Assert.AreEqual(result.User.Email, queryUser.Email); Assert.AreEqual(result.User.Password, queryUser.Password); }
public void GetUserByIdReturnsErrorCodeIfEmailDoesntExist() { // Setup IDocumentStore store = Global.GetInMemoryStore(); UserRepository repository = new UserRepository(store); // Act var result = repository.GetUserById("not here"); // Assert Assert.AreEqual(result.UserCode, UserErrorCode.UserNotFoundInRepository); Assert.IsNull(result.User); }
public void GetUserByEmailReturnsUser() { // Setup IDocumentStore store = Global.GetInMemoryStore(); using (var session = store.OpenSession()) { var user = new User() { Email = "email", Password = "******" }; session.Store(user); session.SaveChanges(); RavenQueryStatistics stats; var results = session.Query<User>() .Statistics(out stats) .Customize(x => x.WaitForNonStaleResults()) .Where(u => u.Email == "email") .ToArray(); } UserRepository repository = new UserRepository(store); // Act var result = repository.GetUserByEmail("email"); // Assert Assert.AreEqual(result.UserCode, UserErrorCode.Success); Assert.IsNotNull(result.User); }
public void EmptyUserIdThrowsExceptionOnDelete() { var store = Global.GetInMemoryStore(); // Setup UserRepository userRepository = new UserRepository(store); // Act userRepository.DeleteUser(""); }