public void TestLogoffWithCorrectParameters() { // Arrange var requestMock = new Mock <HttpRequestMessage>(); requestMock.Object.Method = new HttpMethod("POST"); requestMock.Object.Properties.Add("MS_HttpConfiguration", GetHttpConfiguration()); requestMock.Object.RequestUri = new Uri(UrlConst); SetRequiredUser(); IUserRepository userRepository = GetFakeUserRepository(); IAuthenticationKeeper authenticationKeeper = GetFakeAuthenticationKeeper(); IRoleRepository roleRepository = GetFakeRoleRepository(); var usersController = new SessionController(userRepository, roleRepository, authenticationKeeper) { Request = requestMock.Object }; // Act Task <HttpResponseMessage> response = usersController.Delete(); response.Wait(); // Assert _authenticationKeeperMock.Verify(m => m.Clean(), Times.Once()); Assert.IsFalse(response.IsFaulted); Assert.IsNotNull(response.Result); Assert.IsTrue(response.Result.StatusCode == HttpStatusCode.OK); }
public void TestLogonWithCorrectParameters() { // Arrange var requestMock = new Mock <HttpRequestMessage>(); requestMock.Object.Method = new HttpMethod("POST"); requestMock.Object.Properties.Add("MS_HttpConfiguration", GetHttpConfiguration()); requestMock.Object.RequestUri = new Uri(UrlConst); SetRequiredUser(); IUserRepository userRepository = GetFakeUserRepository(); IAuthenticationKeeper authenticationKeeper = GetFakeAuthenticationKeeper(); IRoleRepository roleRepository = GetFakeRoleRepository(); var usersController = new SessionController(userRepository, roleRepository, authenticationKeeper) { Request = requestMock.Object }; // Act Task <HttpResponseMessage> response = usersController.Post(new SessionLoginModel { Email = UserNameConst, Password = PasswordConst }) .ContinueWith(result => result.Result, TaskContinuationOptions.ExecuteSynchronously); response.Wait(); // Assert _userRepositoryMock.Verify(m => m.ValidateFormsUserAsync(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once()); _authenticationKeeperMock.Verify(m => m.Set(It.IsAny <string>(), It.IsAny <IEnumerable <string> >(), It.IsAny <bool>()), Times.Once()); Assert.IsFalse(response.IsFaulted); Assert.IsNotNull(response.Result); Assert.IsTrue(response.Result.StatusCode == HttpStatusCode.OK); Assert.AreEqual(_userName, "Email:" + UserNameConst); Assert.AreEqual(_password, PasswordConst); Assert.AreEqual(_appName, HostConst); RevertUser(); }
public void TestLogonWithInvalidPassword() { // Arrange const string userNameConst = ""; var requestMock = new Mock <HttpRequestMessage>(); requestMock.Object.Method = new HttpMethod("POST"); requestMock.Object.Properties.Add("MS_HttpConfiguration", GetHttpConfiguration()); requestMock.Object.RequestUri = new Uri(UrlConst); SetRequiredUser(); IUserRepository userRepository = GetFakeUserRepository(); IAuthenticationKeeper authenticationKeeper = GetFakeAuthenticationKeeper(); IRoleRepository roleRepository = GetFakeRoleRepository(); var usersController = new SessionController(userRepository, roleRepository, authenticationKeeper) { Request = requestMock.Object }; // Act Task <HttpResponseMessage> response = usersController.Post(new SessionLoginModel { Email = userNameConst, Password = PasswordConst }); response.Wait(); // Assert _userRepositoryMock.Verify(m => m.ValidateFormsUserAsync(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once()); _authenticationKeeperMock.Verify(m => m.Set(It.IsAny <string>(), It.IsAny <IEnumerable <string> >(), It.IsAny <bool>()), Times.Never()); Assert.IsFalse(response.IsFaulted); Assert.IsNotNull(response.Result); Assert.IsTrue(response.Result.StatusCode == HttpStatusCode.BadRequest); RevertUser(); }