diff options
Diffstat (limited to 'src/test/burn/WixToolsetTest.BurnE2E/BundlePackageTests.cs')
-rw-r--r-- | src/test/burn/WixToolsetTest.BurnE2E/BundlePackageTests.cs | 50 |
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] |