diff --git a/src/test/burn/WixTestTools/UserVerifier.cs b/src/test/burn/WixTestTools/UserVerifier.cs index 51c6c31e5..d192a8b8f 100644 --- a/src/test/burn/WixTestTools/UserVerifier.cs +++ b/src/test/burn/WixTestTools/UserVerifier.cs @@ -43,13 +43,13 @@ public static class SIDStrings /// /// /// Has to be run as an Admin - public static void CreateLocalUser(string userName, string password) + public static void CreateLocalUser(string userName, string password, string comment = "") { DeleteLocalUser(userName); UserPrincipal newUser = new UserPrincipal(new PrincipalContext(ContextType.Machine)); newUser.SetPassword(password); newUser.Name = userName; - newUser.Description = String.Empty; + newUser.Description = comment; newUser.UserCannotChangePassword = true; newUser.PasswordNeverExpires = false; newUser.Save(); diff --git a/src/test/msi/WixToolsetTest.MsiE2E/UtilExtensionUserTests.cs b/src/test/msi/WixToolsetTest.MsiE2E/UtilExtensionUserTests.cs index 30bc53e8f..08b7cee18 100644 --- a/src/test/msi/WixToolsetTest.MsiE2E/UtilExtensionUserTests.cs +++ b/src/test/msi/WixToolsetTest.MsiE2E/UtilExtensionUserTests.cs @@ -48,7 +48,8 @@ public void CanInstallAndUninstallUsers() [RuntimeFact] public void CanRollbackUsers() { - UserVerifier.CreateLocalUser("testName3", "test123!@#"); + UserVerifier.CreateLocalUser("testName3", "test123!@#", "User3 comment"); + UserVerifier.AddUserToGroup("testName3", "Backup Operators"); var productFail = this.CreatePackageInstaller("ProductFail"); // make sure the user accounts are deleted before we start @@ -63,6 +64,10 @@ public void CanRollbackUsers() // Verify that user added to power users group is removed from power users group on rollback. UserVerifier.VerifyUserIsNotMemberOf("", "testName3", "Power Users"); + // but is not removed from Backup Operators + UserVerifier.VerifyUserIsMemberOf(string.Empty, "testName3", "Backup Operators"); + // and has their original comment set back + UserVerifier.VerifyUserComment(string.Empty, "testName3", "User3 comment"); // clean up UserVerifier.DeleteLocalUser("testName1"); @@ -71,7 +76,7 @@ public void CanRollbackUsers() } - // Verify that command-line parameters aer not blocked by repair switches. + // Verify that command-line parameters are not blocked by repair switches. // Original code signalled repair mode by using "-f ", which silently // terminated the command-line parsing, ignoring any parameters that followed. [RuntimeFact()]