aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorBevan Weiss <bevan.weiss@gmail.com>2024-06-30 11:52:25 +1000
committerRob Mensching <rob@firegiant.com>2024-12-26 07:04:37 -0800
commit85745284cd76858f8699190c53719607e0058712 (patch)
tree22e7af62d723fa3cb535d8fa197fd659583f8684 /src/test
parent1afc0bd5592ecf6e6547f36cfef25127b586f4c3 (diff)
downloadwix-85745284cd76858f8699190c53719607e0058712.tar.gz
wix-85745284cd76858f8699190c53719607e0058712.tar.bz2
wix-85745284cd76858f8699190c53719607e0058712.zip
Add a few more checks on rollback of Util User.
Signed-off-by: Bevan Weiss <bevan.weiss@gmail.com>
Diffstat (limited to 'src/test')
-rw-r--r--src/test/burn/WixTestTools/UserVerifier.cs4
-rw-r--r--src/test/msi/WixToolsetTest.MsiE2E/UtilExtensionUserTests.cs9
2 files changed, 9 insertions, 4 deletions
diff --git a/src/test/burn/WixTestTools/UserVerifier.cs b/src/test/burn/WixTestTools/UserVerifier.cs
index 51c6c31e..d192a8b8 100644
--- a/src/test/burn/WixTestTools/UserVerifier.cs
+++ b/src/test/burn/WixTestTools/UserVerifier.cs
@@ -43,13 +43,13 @@ namespace WixTestTools
43 /// <param name="userName"></param> 43 /// <param name="userName"></param>
44 /// <param name="password"></param> 44 /// <param name="password"></param>
45 /// <remarks>Has to be run as an Admin</remarks> 45 /// <remarks>Has to be run as an Admin</remarks>
46 public static void CreateLocalUser(string userName, string password) 46 public static void CreateLocalUser(string userName, string password, string comment = "")
47 { 47 {
48 DeleteLocalUser(userName); 48 DeleteLocalUser(userName);
49 UserPrincipal newUser = new UserPrincipal(new PrincipalContext(ContextType.Machine)); 49 UserPrincipal newUser = new UserPrincipal(new PrincipalContext(ContextType.Machine));
50 newUser.SetPassword(password); 50 newUser.SetPassword(password);
51 newUser.Name = userName; 51 newUser.Name = userName;
52 newUser.Description = String.Empty; 52 newUser.Description = comment;
53 newUser.UserCannotChangePassword = true; 53 newUser.UserCannotChangePassword = true;
54 newUser.PasswordNeverExpires = false; 54 newUser.PasswordNeverExpires = false;
55 newUser.Save(); 55 newUser.Save();
diff --git a/src/test/msi/WixToolsetTest.MsiE2E/UtilExtensionUserTests.cs b/src/test/msi/WixToolsetTest.MsiE2E/UtilExtensionUserTests.cs
index 30bc53e8..08b7cee1 100644
--- a/src/test/msi/WixToolsetTest.MsiE2E/UtilExtensionUserTests.cs
+++ b/src/test/msi/WixToolsetTest.MsiE2E/UtilExtensionUserTests.cs
@@ -48,7 +48,8 @@ namespace WixToolsetTest.MsiE2E
48 [RuntimeFact] 48 [RuntimeFact]
49 public void CanRollbackUsers() 49 public void CanRollbackUsers()
50 { 50 {
51 UserVerifier.CreateLocalUser("testName3", "test123!@#"); 51 UserVerifier.CreateLocalUser("testName3", "test123!@#", "User3 comment");
52 UserVerifier.AddUserToGroup("testName3", "Backup Operators");
52 var productFail = this.CreatePackageInstaller("ProductFail"); 53 var productFail = this.CreatePackageInstaller("ProductFail");
53 54
54 // make sure the user accounts are deleted before we start 55 // make sure the user accounts are deleted before we start
@@ -63,6 +64,10 @@ namespace WixToolsetTest.MsiE2E
63 64
64 // Verify that user added to power users group is removed from power users group on rollback. 65 // Verify that user added to power users group is removed from power users group on rollback.
65 UserVerifier.VerifyUserIsNotMemberOf("", "testName3", "Power Users"); 66 UserVerifier.VerifyUserIsNotMemberOf("", "testName3", "Power Users");
67 // but is not removed from Backup Operators
68 UserVerifier.VerifyUserIsMemberOf(string.Empty, "testName3", "Backup Operators");
69 // and has their original comment set back
70 UserVerifier.VerifyUserComment(string.Empty, "testName3", "User3 comment");
66 71
67 // clean up 72 // clean up
68 UserVerifier.DeleteLocalUser("testName1"); 73 UserVerifier.DeleteLocalUser("testName1");
@@ -71,7 +76,7 @@ namespace WixToolsetTest.MsiE2E
71 } 76 }
72 77
73 78
74 // Verify that command-line parameters aer not blocked by repair switches. 79 // Verify that command-line parameters are not blocked by repair switches.
75 // Original code signalled repair mode by using "-f ", which silently 80 // Original code signalled repair mode by using "-f ", which silently
76 // terminated the command-line parsing, ignoring any parameters that followed. 81 // terminated the command-line parsing, ignoring any parameters that followed.
77 [RuntimeFact()] 82 [RuntimeFact()]