public void Smoke() { // arrange var users = new Mock<IUsersRepository>(); var forms = new Mock<IFormsAuthentication>(); var hash = new HashService(); var service = new AuthenticationService(users.Object, forms.Object, hash); // act / post Assert.That(service, Is.Not.Null); }
public void FailedAuthentication_WrongPassword() { // arrange var users = new Mock<IUsersRepository>(); var forms = new Mock<IFormsAuthentication>(); var hash = new HashService(); var service = new AuthenticationService(users.Object, forms.Object, hash); users.Setup(u => u.Users).Returns(new List<User> { new User { Email = "*****@*****.**", PasswordHash = hash.CreateMD5Hash("111"), Id = 1, Temp = false } }.AsQueryable()); forms.Setup(f => f.SetAuthCookie("", false)).Throws(new Exception("SetAuthCookie must not be called for failed authentication")); // act var auth = service.Authenticate("*****@*****.**", "1111"); // post Assert.That(auth, Is.False); }
public void SuccessAuthentication() { // arrange var users = new Mock<IUsersRepository>(); var forms = new Mock<IFormsAuthentication>(); var hash = new HashService(); var service = new AuthenticationService(users.Object, forms.Object, hash); users.Setup(u => u.Users).Returns(new List<User> { new User { Email = "*****@*****.**", PasswordHash = hash.CreateMD5Hash("111"), Id = 1, Temp = false } }.AsQueryable()); // act var auth = service.Authenticate("*****@*****.**", "111"); // post Assert.That(auth, Is.True); forms.Verify(f => f.SetAuthCookie("*****@*****.**", false)); }
public void GetUserId() { // arrange var users = new Mock<IUsersRepository>(); var forms = new Mock<IFormsAuthentication>(); var hash = new HashService(); var service = new AuthenticationService(users.Object, forms.Object, hash); users.Setup(u => u.Users).Returns(new List<User> { new User { Email = "*****@*****.**", PasswordHash = hash.CreateMD5Hash("111"), Id = 1, Temp = false } }.AsQueryable()); // act var id = service.GetUserIdByEmail("*****@*****.**"); // assert Assert.That(id, Is.EqualTo(1)); }
public void CreateNewUser_ApiToken_Created() { // arrange var usersRepository = new Mock<IUsersRepository>(); var forms = new Mock<IFormsAuthentication>(); var hash = new HashService(); var service = new AuthenticationService(usersRepository.Object, forms.Object, hash); var users = new List<User>(); usersRepository.Setup(u => u.Users).Returns(users.AsQueryable()); usersRepository.Setup(u => u.Save(It.IsAny<User>())).Callback((User u) => users.Add(u)); // act service.RegisterNewUser("*****@*****.**", "mypass"); // assert Assert.That(users.Count, Is.GreaterThan(0)); var found = users.Find((u) => u.Email == "*****@*****.**"); Assert.That(found.ApiToken.Length, Is.EqualTo(32)); }
public void CreateNewUser_Returns_False_If_User_Exists() { // arrange var usersRepository = new Mock<IUsersRepository>(); var forms = new Mock<IFormsAuthentication>(); var hash = new HashService(); var service = new AuthenticationService(usersRepository.Object, forms.Object, hash); var users = new List<User>(); usersRepository.Setup(u => u.Users).Returns(users.AsQueryable()); usersRepository.Setup(u => u.Save(It.IsAny<User>())).Callback((User u) => users.Add(u)); // act service.RegisterNewUser("*****@*****.**", "mypass"); var result = service.RegisterNewUser("*****@*****.**", "mypass"); // assert Assert.That(result, Is.False); }
public void CreateNewUser_User_Immediately_Auhtenticated() { //arrange var usersRepository = new Mock<IUsersRepository>(); var forms = new Mock<IFormsAuthentication>(); var hash = new HashService(); var service = new AuthenticationService(usersRepository.Object, forms.Object, hash); var users = new List<User>(); usersRepository.Setup(u => u.Users).Returns(users.AsQueryable()); usersRepository.Setup(u => u.Save(It.IsAny<User>())).Callback((User u) => users.Add(u)); // act service.RegisterNewUser("*****@*****.**", "mypass"); // assert Assert.That(users.Count, Is.GreaterThan(0)); forms.Verify(f => f.SetAuthCookie("*****@*****.**", false)); }