summaryrefslogtreecommitdiff
path: root/src/test/burn/WixToolsetTest.BurnE2E/BundlePackageTests.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/burn/WixToolsetTest.BurnE2E/BundlePackageTests.cs')
-rw-r--r--src/test/burn/WixToolsetTest.BurnE2E/BundlePackageTests.cs50
1 files changed, 46 insertions, 4 deletions
diff --git a/src/test/burn/WixToolsetTest.BurnE2E/BundlePackageTests.cs b/src/test/burn/WixToolsetTest.BurnE2E/BundlePackageTests.cs
index 1bb0c0b6..bcdea974 100644
--- a/src/test/burn/WixToolsetTest.BurnE2E/BundlePackageTests.cs
+++ b/src/test/burn/WixToolsetTest.BurnE2E/BundlePackageTests.cs
@@ -31,8 +31,8 @@ namespace WixToolsetTest.BurnE2E
31 multipleBundlePackagesBundle.Install(); 31 multipleBundlePackagesBundle.Install();
32 multipleBundlePackagesBundle.VerifyRegisteredAndInPackageCache(); 32 multipleBundlePackagesBundle.VerifyRegisteredAndInPackageCache();
33 33
34 bundleA.VerifyRegisteredAndInPackageCache(); 34 bundleA.VerifyRegisteredAndInPackageCache(expectedSystemComponent: 1);
35 bundleB_x64.VerifyRegisteredAndInPackageCache(); 35 bundleB_x64.VerifyRegisteredAndInPackageCache(expectedSystemComponent: 1);
36 36
37 // Source file should be installed 37 // Source file should be installed
38 Assert.True(File.Exists(packageA32SourceCodeFilePath), $"Should have found PackageA payload installed at: {packageA32SourceCodeFilePath}"); 38 Assert.True(File.Exists(packageA32SourceCodeFilePath), $"Should have found PackageA payload installed at: {packageA32SourceCodeFilePath}");
@@ -61,14 +61,15 @@ namespace WixToolsetTest.BurnE2E
61 61
62 upgradeBundlePackageBundlev2.Install(); 62 upgradeBundlePackageBundlev2.Install();
63 upgradeBundlePackageBundlev2.VerifyRegisteredAndInPackageCache(); 63 upgradeBundlePackageBundlev2.VerifyRegisteredAndInPackageCache();
64 bundleAv2.VerifyRegisteredAndInPackageCache(); 64 bundleAv2.VerifyRegisteredAndInPackageCache(expectedSystemComponent: 1);
65 bundleAv1.VerifyUnregisteredAndRemovedFromPackageCache(); 65 bundleAv1.VerifyUnregisteredAndRemovedFromPackageCache();
66 } 66 }
67 67
68 [Fact] 68 [Fact]
69 public void CanInstallV3BundlePackage() 69 public void CanInstallV3BundlePackage()
70 { 70 {
71 var v3BundleName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), "Package Cache", "{215a70db-ab35-48c7-be51-d66eaac87177}", "CustomV3Theme"); 71 var v3BundleId = "{215a70db-ab35-48c7-be51-d66eaac87177}";
72 var v3BundleName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), "Package Cache", v3BundleId, "CustomV3Theme");
72 var v3Bundle = new BundleInstaller(this.TestContext, v3BundleName); 73 var v3Bundle = new BundleInstaller(this.TestContext, v3BundleName);
73 this.AddBundleInstaller(v3Bundle); 74 this.AddBundleInstaller(v3Bundle);
74 var v3BundlePackageBundle = this.CreateBundleInstaller("V3BundlePackageBundle"); 75 var v3BundlePackageBundle = this.CreateBundleInstaller("V3BundlePackageBundle");
@@ -79,6 +80,47 @@ namespace WixToolsetTest.BurnE2E
79 v3BundlePackageBundle.VerifyRegisteredAndInPackageCache(); 80 v3BundlePackageBundle.VerifyRegisteredAndInPackageCache();
80 81
81 Assert.True(LogVerifier.MessageInLogFile(logPath, "Applied execute package: v3bundle.exe, result: 0x0, restart: None")); 82 Assert.True(LogVerifier.MessageInLogFile(logPath, "Applied execute package: v3bundle.exe, result: 0x0, restart: None"));
83
84 Assert.True(BundleRegistration.TryGetPerMachineBundleRegistrationById(v3BundleId, false, out var v3Registration));
85 Assert.Null(v3Registration.SystemComponent);
86 }
87
88 [Fact]
89 public void CanLeaveBundlePackageVisible()
90 {
91 var bundleAv1 = this.CreateBundleInstaller(@"..\UpgradeRelatedBundleTests\BundleAv1");
92 var upgradeBundlePackageBundlev1 = this.CreateBundleInstaller("UpgradeBundlePackageBundlev1");
93
94 bundleAv1.Install();
95 bundleAv1.VerifyRegisteredAndInPackageCache();
96
97 upgradeBundlePackageBundlev1.Install();
98 upgradeBundlePackageBundlev1.VerifyRegisteredAndInPackageCache();
99 bundleAv1.VerifyRegisteredAndInPackageCache();
100
101 upgradeBundlePackageBundlev1.Uninstall();
102 upgradeBundlePackageBundlev1.VerifyUnregisteredAndRemovedFromPackageCache();
103 bundleAv1.VerifyRegisteredAndInPackageCache();
104 }
105
106 [Fact]
107 public void CanReferenceCountBundlePackage()
108 {
109 var bundleAv1 = this.CreateBundleInstaller(@"..\UpgradeRelatedBundleTests\BundleAv1");
110 var upgradeBundlePackageBundlev1 = this.CreateBundleInstaller("UpgradeBundlePackageBundlev1");
111
112 upgradeBundlePackageBundlev1.Install();
113 upgradeBundlePackageBundlev1.VerifyRegisteredAndInPackageCache();
114 bundleAv1.VerifyRegisteredAndInPackageCache(expectedSystemComponent: 1);
115
116 // Repair bundle so it adds itself as a reference to itself.
117 bundleAv1.Repair();
118 bundleAv1.VerifyRegisteredAndInPackageCache(expectedSystemComponent: 1);
119
120 upgradeBundlePackageBundlev1.Uninstall();
121 upgradeBundlePackageBundlev1.VerifyUnregisteredAndRemovedFromPackageCache();
122
123 bundleAv1.VerifyRegisteredAndInPackageCache(expectedSystemComponent: 1);
82 } 124 }
83 125
84 [Fact] 126 [Fact]