public void Login_NewUser_ValidUsername_200() { var controller = new UserController(); var user = ut.CreateSSOUserInDb(); var timestamp = 12312445; var expectedStatusCode = HttpStatusCode.SeeOther; MockLoginPayload mock_payload = new MockLoginPayload { ssoUserId = user.Id, email = user.Username, timestamp = timestamp }; var endpoint = API_ROUTE_LOCAL + "/api/user/login"; var payload = new LoginRequestPayload { Email = user.Username, SSOUserId = mock_payload.ssoUserId.ToString(), Timestamp = mock_payload.timestamp, Signature = mock_payload.Signature(), }; controller.Request = new HttpRequestMessage { RequestUri = new Uri(endpoint) }; var actionresult = controller.LoginFromSSO(payload); Assert.IsInstanceOfType(actionresult, typeof(Task <HttpResponseMessage>)); Assert.IsNotNull(actionresult as Task <HttpResponseMessage>); var result = actionresult as Task <HttpResponseMessage>; Assert.AreEqual(expectedStatusCode, result.Result.StatusCode); }
public void Login_NewUser_ValidUserName_Success() { using (var _db = ut.CreateDataBaseContext()) { _ssoLoginManager = new KFC_SSO_Manager(_db); var user = ut.CreateSSOUserInDb(); var timestamp = 8283752242; MockLoginPayload mock_payload = new MockLoginPayload { email = user.Username, ssoUserId = user.Id, timestamp = timestamp }; var response = _ssoLoginManager.LoginFromSSO(mock_payload.email, mock_payload.ssoUserId, timestamp, mock_payload.Signature()); Assert.IsNotNull(response); } }
public void LoginRegister_Invalid_Signature_401() { var controller = new UserController(); var existing_user = ut.CreateSSOUserInDb(); var existing_username = existing_user.Username; var existing_ssoID = existing_user.Id; var timestamp = 23454252; var expectedStatusCode = HttpStatusCode.Unauthorized; MockLoginPayload mock_payload = new MockLoginPayload { ssoUserId = existing_ssoID, email = existing_username, timestamp = timestamp }; // modify payload value var alterdEmail = "*****@*****.**"; var endpoint = API_ROUTE_LOCAL + "/api/user/login"; LoginRequestPayload payload = new LoginRequestPayload { Email = alterdEmail, SSOUserId = mock_payload.ssoUserId.ToString(), Timestamp = mock_payload.timestamp, Signature = mock_payload.Signature(), }; controller.Request = new HttpRequestMessage { RequestUri = new Uri(endpoint) }; var actionresult = controller.LoginFromSSO(payload); // returns a HTTPResponseMessage Assert.IsInstanceOfType(actionresult, typeof(Task <HttpResponseMessage>)); var contentresult = actionresult as Task <HttpResponseMessage>; Assert.AreEqual(expectedStatusCode, contentresult.Result.StatusCode); }
public void Register_Attempt_InvalidSSOID_400() { var controller = new UserController(); var attemptedUsername = "******"; var attemptedSSOId = Guid.NewGuid(); var attemptedTimestamp = 2345678; var expectedStatusCode = HttpStatusCode.BadRequest; MockLoginPayload mock_payload = new MockLoginPayload { ssoUserId = attemptedSSOId, email = attemptedUsername, timestamp = attemptedTimestamp }; var endpoint = API_ROUTE_LOCAL + "/api/user/login"; var makeAttemptedSSOIdInvalid = mock_payload.ssoUserId.ToString() + "838fjf57h2dhdn2dn"; LoginRequestPayload payload = new LoginRequestPayload { Email = mock_payload.email, SSOUserId = makeAttemptedSSOIdInvalid, Timestamp = mock_payload.timestamp, Signature = mock_payload.Signature(), }; controller.Request = new HttpRequestMessage { RequestUri = new Uri(endpoint) }; var actionresult = controller.LoginFromSSO(payload); // returns a HTTPResponseMessage Assert.IsInstanceOfType(actionresult, typeof(Task <HttpResponseMessage>)); var contentresult = actionresult as Task <HttpResponseMessage>; Assert.AreEqual(expectedStatusCode, contentresult.Result.StatusCode); }
public void Login_ExistingUser_Success() { var existing_user = ut.CreateSSOUserInDb(); var existing_username = existing_user.Username; var existing_ssoID = existing_user.Id; var timestamp = 12312312; var _ssoAuth = new SignatureService(); MockLoginPayload mock_payload = new MockLoginPayload { email = existing_username, ssoUserId = existing_ssoID, timestamp = timestamp }; var signature = mock_payload.Signature(); using (var _db = ut.CreateDataBaseContext()) { _ssoLoginManager = new KFC_SSO_Manager(_db); var response = _ssoLoginManager.LoginFromSSO(existing_username, existing_ssoID, timestamp, signature); Assert.IsNotNull(response); } }
public async void Login_NewUser_InvalidUserName_Failure_ExceptionThrown() { var invalid_username = Guid.NewGuid() + ".com"; var valid_ssoID = Guid.NewGuid(); var timestamp = 8283752242; MockLoginPayload mock_payload = new MockLoginPayload { email = invalid_username, ssoUserId = valid_ssoID, timestamp = timestamp }; var signature = mock_payload.Signature(); using (var _db = ut.CreateDataBaseContext()) { _ssoLoginManager = new KFC_SSO_Manager(_db); var result = await _ssoLoginManager.LoginFromSSO(invalid_username, valid_ssoID, timestamp, signature); } //Assert - catch exception }
public void Login_ExistingUser_ValidSSOID_200() { var controller = new UserController(); var existing_user = ut.CreateSSOUserInDb(); var existing_username = existing_user.Username; var existing_ssoID = existing_user.Id; var timestamp = 23454252; MockLoginPayload mock_payload = new MockLoginPayload { ssoUserId = existing_ssoID, email = existing_username, timestamp = timestamp }; var endpoint = API_ROUTE_LOCAL + "/api/user/login"; var payload = new LoginRequestPayload { Email = existing_username, SSOUserId = mock_payload.ssoUserId.ToString(), Timestamp = mock_payload.timestamp, Signature = mock_payload.Signature(), }; controller.Request = new HttpRequestMessage { RequestUri = new Uri(endpoint) }; var actionresult = controller.LoginFromSSO(payload); Assert.IsInstanceOfType(actionresult, typeof(Task <HttpResponseMessage>)); var contentresult = actionresult as Task <HttpResponseMessage>; Assert.IsNotNull(contentresult); }