public async Task User_should_be_able_to_change_password() { var createdResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var passwordRequest = new PasswordForgottenRequest { Username = createdResult.Data.First().Username }; var tokenResult = await UserManagementApi.GetPasswordResetToken(passwordRequest); var tokenData = tokenResult.Data.First(); var newPasswordRequest = new PasswordForgottenNewPassword { Username = tokenData.Username, Token = tokenData.Token, Password = "******" }; var changePasswordResult = await UserManagementApi.SetNewPasswordAfterReset(newPasswordRequest); Assert.True(createdResult.Success); Assert.True(tokenResult.Success); Assert.True(changePasswordResult.Success); }
public void GetUserInfoTest() { GetUserInfoResultModel result = UserManagementApi.GetUserInfo(base.TestOpenId); Assert.NotNull(result); Assert.Equal(0, result.ErrorCode); Assert.True(result.OpenID.Length > 0); }
public async Task User_should_be_deleted() { var createdResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var deleteResult = await UserManagementApi.DeleteUser(createdResult.Data.First().Id); Assert.True(createdResult.Success); Assert.True(deleteResult.Success); }
public async Task Created_user_dto_should_match_fetched_by_id_dto() { var createdResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var fetchResult = await UserManagementApi.GetUserById(createdResult.Data.First().Id); Assert.True(createdResult.Success); Assert.True(fetchResult.Success); Assert.Equal(createdResult.Data, fetchResult.Data); }
public async Task Created_user_dto_should_match_fetched_by_username_dto() { var createdResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var userData = createdResult.Data.First(); var fetchResult = await UserManagementApi.Search(new UsersTenantSearch(username : userData.Username)); Assert.True(createdResult.Success); Assert.True(fetchResult.Success); Assert.Contains(createdResult.Data.First(), fetchResult.Data); }
public void TestUserManagementSettings() { _env = new Environment(); _env.SetUserVariable("Environment", "Development"); var _ums = new UserManagementApi(); var _testConnection = _ums.ConnectionString; var _testEnvString = _ums.Environment; Assert.IsTrue(_testEnvString.Equals("Development")); Assert.IsTrue(!string.IsNullOrWhiteSpace(_testConnection), "No Connection found"); }
public async Task Created_user_dto_should_match_original_dto() { var userDto = GetUniqueTestUser; var createdResult = await UserManagementApi.CreateUser(userDto); var userData = createdResult.Data.First(); Assert.True(createdResult.Success); Assert.Equal(userDto.Email, userData.Email); Assert.Equal(userDto.Username, userData.Username); Assert.Equal(userDto.AdditionalDataJson, userData.AdditionalDataJson); }
public async Task User_should_be_assigned_to_role() { var userResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var userData = userResult.Data.First(); await LoadRoles(); var roleAddResult = await UserManagementApi.AddUserToRole(userData.Id, Role1.Id); Assert.True(userResult.Success); Assert.True(roleAddResult.Success); }
public async Task Getting_user_by_multiple_params_should_work() { var createdResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var userData = createdResult.Data.First(); var fetchResult1 = await UserManagementApi.GetUserById(userData.Id); var fetchResult2 = await UserManagementApi.Search(new UsersTenantSearch(username : userData.Username)); Assert.True(createdResult.Success); Assert.True(fetchResult1.Success); Assert.True(fetchResult2.Success); }
public async Task Getting_profile_should_work() { var userDto = GetUniqueTestUser; await UserManagementApi.CreateUser(userDto); var tokenRequest = TokenRequest.PasswordTokenRequest(ClientId, userDto.Username, userDto.Password); var restResult = await restClient.Post <IdentityUtilsResult <TokenResponse> >($"{BaseUrl}/auth/token", tokenRequest); var accessToken = restResult.ResponseData.Data.First().AccessToken; var profileRestResult = await restClient.Get <IdentityUtilsResult <UserProfile> >($"{BaseUrl}/auth/init", accessToken); Assert.True(profileRestResult.Success); Assert.True(profileRestResult.ResponseData.Success); Assert.NotEmpty(profileRestResult.ResponseData.Data); }
public async Task Getting_auth_token_should_work() { var userDto = GetUniqueTestUser; await UserManagementApi.CreateUser(userDto); var tokenRequest = TokenRequest.PasswordTokenRequest(ClientId, userDto.Username, userDto.Password); var restResult = await restClient.Post <IdentityUtilsResult <TokenResponse> >($"{BaseUrl}/auth/token", tokenRequest); var tokenData = restResult.ResponseData?.Data?.FirstOrDefault(); Assert.True(restResult.Success); Assert.True(restResult.ResponseData.Success); Assert.NotNull(tokenData); Assert.NotEmpty(tokenData.AccessToken); Assert.NotEmpty(tokenData.RefreshToken); }
public async Task Managing_user_roles_should_work_properly_after_multiple_operations() { var userResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var userData = userResult.Data.First(); await LoadRoles(); var roleRemoveResult = await UserManagementApi.RemoveUserFromRole(userData.Id, Role1.Id); var userRoles = await UserManagementApi.GetUserRoles(userData.Id); Assert.True(userResult.Success); Assert.True(roleRemoveResult.Success); Assert.Empty(userRoles.Data); }
public async Task User_should_be_updated() { var createdResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var userDto = createdResult.Data.First(); userDto.Email = "*****@*****.**"; var updatedResult = await UserManagementApi.UpdateUser(userDto); var fetchResult = await UserManagementApi.GetUserById(userDto.Id); Assert.True(createdResult.Success); Assert.True(updatedResult.Success); Assert.True(fetchResult.Success); Assert.Equal(userDto.Email, fetchResult.Data.First().Email); }
public async Task Adding_user_to_multiple_roles_should_work() { var userResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var userData = userResult.Data.First(); await LoadRoles(); var roleAddResult1 = await UserManagementApi.AddUserToRole(userData.Id, Role1.Id); var roleAddResult2 = await UserManagementApi.AddUserToRole(userData.Id, Role2.Id); var userRoles = await UserManagementApi.GetUserRoles(userData.Id); Assert.True(userResult.Success); Assert.True(roleAddResult1.Success); Assert.True(roleAddResult2.Success); Assert.Equal(2, userRoles.Data.Count()); }
public async Task Adding_user_to_role_multiple_times_shouldnt_do_anything() { var userResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var userData = userResult.Data.First(); await LoadRoles(); var role1AddResult = await UserManagementApi.AddUserToRole(userData.Id, Role1.Id); var role2AddResult = await UserManagementApi.AddUserToRole(userData.Id, Role1.Id); var userRoles = await UserManagementApi.GetUserRoles(userData.Id); Assert.True(userResult.Success); Assert.True(role1AddResult.Success); Assert.True(role2AddResult.Success); Assert.Single(userRoles.Data); }
public async Task Removing_user_from_role_should_work() { var userResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var userData = userResult.Data.First(); await LoadRoles(); var roleAddResult = await UserManagementApi.AddUserToRole(userData.Id, Role1.Id); var roleRemoveResult = await UserManagementApi.RemoveUserFromRole(userData.Id, Role1.Id); var userRoles = await UserManagementApi.GetUserRoles(userData.Id); Assert.True(userResult.Success); Assert.True(roleAddResult.Success); Assert.True(roleRemoveResult.Success); Assert.Empty(userRoles.Data); }
public static void Run() { try { var organizationId = "testrest"; var permissionId = "CustomerProfileViewPermission"; var roleId = "admin"; var username = "******"; var configDictionary = new Configuration().GetConfiguration(); var clientConfig = new CyberSource.Client.Configuration(merchConfigDictObj: configDictionary); var apiInstance = new UserManagementApi(clientConfig); var result = apiInstance.GetUsers(organizationId); Console.WriteLine(result); } catch (Exception e) { Console.WriteLine("Exception on calling the API: " + e.Message); } }
public static UmsV1UsersGet200Response Run() { string organizationId = "testrest"; string userName = null; string permissionId = "CustomerProfileViewPermission"; string roleId = null; try { var configDictionary = new Configuration().GetConfiguration(); var clientConfig = new CyberSource.Client.Configuration(merchConfigDictObj: configDictionary); var apiInstance = new UserManagementApi(clientConfig); UmsV1UsersGet200Response result = apiInstance.GetUsers(organizationId, userName, permissionId, roleId); Console.WriteLine(result); return(result); } catch (Exception e) { Console.WriteLine("Exception on calling the API : " + e.Message); return(null); } }
public async Task Fetching_users_per_role_should_filter_correctly() { await LoadRoles(); var userCreatedResult1 = await UserManagementApi.CreateUser(GetUniqueTestUser); var userCreatedResult2 = await UserManagementApi.CreateUser(GetUniqueTestUser); var userData1 = userCreatedResult1.Data.First(); var userData2 = userCreatedResult2.Data.First(); await UserManagementApi.AddUserToRole(userData1.Id, Role1.Id); await UserManagementApi.AddUserToRole(userData1.Id, Role2.Id); await UserManagementApi.AddUserToRole(userData2.Id, Role2.Id); var usersInRoleResult1 = await UserManagementApi.Search(new UsersSearch(Role1.Id)); var usersInRoleResult2 = await UserManagementApi.Search(new UsersSearch(Role2.Id)); Assert.Single(usersInRoleResult1.Data); Assert.Equal(2, usersInRoleResult2.Data.Count()); }
public async Task Removing_user_from_unassigned_role_shouldnt_do_anything() { var userResult = await UserManagementApi.CreateUser(GetUniqueTestUser); var userData = userResult.Data.First(); await LoadRoles(); await UserManagementApi.AddUserToRole(userData.Id, Role1.Id); await UserManagementApi.AddUserToRole(userData.Id, Role2.Id); await UserManagementApi.AddUserToRole(userData.Id, Role2.Id); await UserManagementApi.RemoveUserFromRole(userData.Id, Role1.Id); await UserManagementApi.RemoveUserFromRole(userData.Id, Role2.Id); await UserManagementApi.AddUserToRole(userData.Id, Role2.Id); var userRoles = await UserManagementApi.GetUserRoles(userData.Id); Assert.Single(userRoles.Data); }
public void Init() { instance = new UserManagementApi(); }
public async System.Threading.Tasks.Task TestAddNewUserByUserNameAsync() { _env = new Environment(); _users = new UserManagementApi(); _env.SetUserVariable("Environment", "Development"); _user = new User { //1- Create Dummy User Id = System.Guid.Parse("F037567D-54BC-4044-A6F4-66A7E85A0E34"), UserName = "******", GivenName = "carlos", SurName = "perez", PasswordHash = "TestGoog!e1", Email = "*****@*****.**" }; //2- Delete records await _users.DeleteAllUsers(); await _users.DeleteRoles(); //3- Add User Records var _userResponse = await _users.AddOrUpdateUserWithUserName(_user); Assert.IsTrue(_userResponse.Status.Equals("ok"), _userResponse.Msg); //4- Update User - changed username and same password _user.UserName = "******"; _user.PasswordHash = "TestGoog!e1"; _userResponse = await _users.AddOrUpdateUserWithUserName(_user); Assert.IsTrue(_userResponse.Status.Equals("ok"), _userResponse.Msg); //5- Lock The Account _userResponse = await _users.SetLockState(_user.Id, "This account is locked due to payments", true); Assert.IsTrue(_userResponse.LockEnabled, _userResponse.Msg); System.Threading.Thread.Sleep(500); //5- Unlock The Account _userResponse = await _users.SetLockState(_user.Id, "Payments Received for $200", false); Assert.IsTrue(!_userResponse.LockEnabled, _userResponse.Msg); //6- Disable the account and verify System.Threading.Thread.Sleep(500); _userResponse = await _users.SetActiveState(_user.Id, "Deleting the Account for Temp reasons!", false); Assert.IsTrue(!_userResponse.IsActive, "failed to disable the user account"); //7- Enable the account and verify System.Threading.Thread.Sleep(500); _userResponse = await _users.SetActiveState(_user.Id, "Found the Problem. Account was enable after receiving the email from Peter", true); Assert.IsTrue(_userResponse.IsActive, "failed to enable the user account"); //8- Find User By UserName _userResponse = await _users.GetUserByUserName("cperez1"); Assert.IsTrue((_userResponse.Status.Equals("ok") && _userResponse.Email.Equals("*****@*****.**")), _userResponse.Msg); //9- Find User By Email _userResponse = await _users.GetUserByEmail("*****@*****.**"); Assert.IsTrue((_userResponse.Status.Equals("ok") && _userResponse.UserName.Equals("cperez1")), _userResponse.Msg); //10- Delete the User Account _userResponse = await _users.DeleteUserAccount(_user.Id, "Testing Delete Account"); var _userList = await _users.GetActiveUsers(); Assert.IsTrue(_userList.Count == 0, "Failed to Delete Account"); //11- Set the Account Active again _userResponse = await _users.SetActiveState(_user.Id, "User is back", true); Assert.IsTrue(_userResponse.IsActive, "failed to enable the user account"); //12- Reset Password- Mismatch Error _userResponse = await _users.ResetPassword(_user.Email, "TestGoog!e3", "TestGoog!e2"); Assert.IsTrue(_userResponse.Status.Equals("error"), _userResponse.Msg); //12- Reset Password- Mismatch and change password _userResponse = await _users.ResetPassword(_user.Email, "TestGoog!e1", "TestGoog!e2"); Assert.IsTrue(_userResponse.Status.Equals("ok"), _userResponse.Msg); //13- Login with New password _userResponse = await _users.LoginByEmail(_user.Email, "TestGoog!e2"); Assert.IsTrue(_userResponse.Status.Equals("ok"), _userResponse.Msg); //14- Login with invalid params _userResponse = await _users.LoginByEmail(_user.Email, ""); Assert.IsTrue(_userResponse.Status.Equals("error"), _userResponse.Msg); //15- Login with invalid email _userResponse = await _users.LoginByEmail("123@", "TestGoog!e2"); Assert.IsTrue(_userResponse.Status.Equals("error"), _userResponse.Msg); //16- Login with old password _userResponse = await _users.LoginByEmail(_user.Email, "TestGoog!e1"); Assert.IsTrue(_userResponse.Status.Equals("error"), _userResponse.Msg); //17- Login with New password...again var loginemail = new LoginEmail { Email = _user.Email, Password = "******" }; _userResponse = await _users.LoginByEmail(loginemail); Assert.IsTrue(_userResponse.Status.Equals("ok"), _userResponse.Msg); //18- Login by UserName var userlogin = new LoginUser { UserName = _user.UserName, Password = "******" }; _userResponse = await _users.LoginByUserName(userlogin); Assert.IsTrue(_userResponse.Status.Equals("ok"), _userResponse.Msg); //19- Verify User Counts _userList = await _users.GetActiveUsers(); Assert.IsTrue(_userList.Count > 0, "Failed to Retrived All Users"); //ROLES:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: //20- Add Roles var _roleName = "anonymous user"; var _role = await _users.AddRole(_roleName); Assert.IsTrue(_role.RoleName.Equals(_roleName), $"unable to add new role: {_roleName}"); //21- Add Roles _roleName = "authenticated user"; _role = await _users.AddRole(_roleName); Assert.IsTrue(_role.RoleName.Equals(_roleName), $"unable to add new role: {_roleName}"); //22- make sure no duplicate names are added _roleName = "authenticated user"; _role = await _users.AddRole(_roleName); Assert.IsTrue(_role.RoleName.Equals(_roleName), $"unable to add new role: {_roleName}"); //23- Add Roles _roleName = "administrator"; _role = await _users.AddRole(_roleName); Assert.IsTrue(_role.RoleName.Equals(_roleName), $"unable to add new role: {_roleName}"); var updateId = _role.Id; //24- Add dummy role to delete _roleName = "dummy"; _role = await _users.AddRole(_roleName); Assert.IsTrue(_role.RoleName.Equals(_roleName), $"unable to add new role: {_roleName}"); _role = await _users.GetRole(_role.Id); Assert.IsTrue(_role.IsActive, $"unable to get role: {_role.Id}"); _roleName = "dummy"; await _users.DeleteRole(_role.Id); _role = await _users.GetRoleByName("dummy"); Assert.IsTrue(_role == null, $"unable to delete dummy"); //25- Update Role _roleName = "administrator2"; _role = await _users.UpdateRole(updateId, "administrator2"); Assert.IsTrue(_role.RoleName.Equals(_roleName)); //26- Register a New User with email (may consider deleting "user") _userResponse = await _users.Register("*****@*****.**", "JP632tilla1!", "carlos perez"); Assert.IsTrue(_userResponse.Status.Equals("ok"), _userResponse.Msg); }
public async Task Deleting_nonexisting_user_should_fail_gracefully() { var deleteResult = await UserManagementApi.DeleteUser(Guid.NewGuid()); Assert.False(deleteResult.Success); }