public void CreateUser() { var identity = new CloudIdentity(); var provider = new CloudIdentityProvider(identity); #region CreateUser NewUser user = new NewUser("{username}", "{email}", enabled: true); user = provider.AddUser(user, null); string password = user.Password; #endregion }
public void Should_Add_New_User_2_With_Specifying_A_Password_But_Not_Default_Region_To_Account_When_Requesting_As_User_Admin() { IIdentityProvider provider = new CloudIdentityProvider(_testIdentity); var newUser = provider.AddUser(new NewUser { Username = "******", Email = "*****@*****.**", Enabled = true, Password = NewUserPassword }); _newTestUserPassword = newUser.Password; Assert.IsNotNull(newUser); Assert.AreEqual("openstacknettestuser2", newUser.Username); Assert.AreEqual("*****@*****.**", newUser.Email); Assert.AreEqual(true, newUser.Enabled); Assert.AreEqual(NewUserPassword, newUser.Password); Assert.IsFalse(string.IsNullOrWhiteSpace(newUser.Password)); }
public void TestAddUserUpdateUserDeleteUser() { string username = GenerateUsername(); NewUser newUser = new NewUser(username, username + "@example.com"); IIdentityProvider provider = new CloudIdentityProvider(Bootstrapper.Settings.TestIdentity); NewUser user = provider.AddUser(newUser); Assert.IsNotNull(user); Assert.AreEqual(username, user.Username); Assert.IsFalse(string.IsNullOrEmpty(user.Id)); Assert.IsFalse(string.IsNullOrEmpty(user.Password)); try { // make sure we can't add the same user twice provider.AddUser(newUser); Assert.Fail("Expected a conflict"); } catch (ServiceConflictException) { // this makes the most sense } catch (ResponseException) { // this is allowed by the interface } User current = provider.GetUser(user.Id); Console.WriteLine(); Console.WriteLine("Updating email address..."); Console.WriteLine(); current.Email = username + "*****@*****.**"; User updated = provider.UpdateUser(current); Console.WriteLine(JsonConvert.SerializeObject(updated, Formatting.Indented)); Assert.AreNotSame(current, updated); Assert.AreEqual(current.Email, updated.Email); Console.WriteLine(); Console.WriteLine("Updating username..."); Console.WriteLine(); current.Username = username + "2"; updated = provider.UpdateUser(current); Console.WriteLine(JsonConvert.SerializeObject(updated, Formatting.Indented)); Assert.AreNotSame(current, updated); Assert.AreEqual(current.Username, updated.Username); Console.WriteLine(); Console.WriteLine("Updating default region..."); Console.WriteLine(); current.DefaultRegion = current.DefaultRegion == "SYD" ? "DFW" : "SYD"; updated = provider.UpdateUser(current); Console.WriteLine(JsonConvert.SerializeObject(updated, Formatting.Indented)); Assert.AreNotSame(current, updated); Assert.AreEqual(current.DefaultRegion, updated.DefaultRegion); Console.WriteLine(); Console.WriteLine("Updating enabled (toggling twice)..."); Console.WriteLine(); current.Enabled = !current.Enabled; updated = provider.UpdateUser(current); Console.WriteLine(JsonConvert.SerializeObject(updated, Formatting.Indented)); Assert.AreNotSame(current, updated); Assert.AreEqual(current.Enabled, updated.Enabled); current.Enabled = !current.Enabled; updated = provider.UpdateUser(current); Console.WriteLine(JsonConvert.SerializeObject(updated, Formatting.Indented)); Assert.AreNotSame(current, updated); Assert.AreEqual(current.Enabled, updated.Enabled); Assert.IsNotNull(provider.GetUser(user.Id)); bool deleted = provider.DeleteUser(user.Id); Assert.IsTrue(deleted); try { provider.GetUser(user.Id); Assert.Fail("Expected an exception"); } catch (ItemNotFoundException) { // this makes the most sense } catch (UserNotAuthorizedException) { // this is allowed by the interface, and some providers report it for security reasons } catch (ResponseException) { // this is allowed by the interface } }