diff options
Diffstat (limited to 'src/test/burn/WixToolsetTest.BurnE2E/UpdateBundleTests.cs')
-rw-r--r-- | src/test/burn/WixToolsetTest.BurnE2E/UpdateBundleTests.cs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/test/burn/WixToolsetTest.BurnE2E/UpdateBundleTests.cs b/src/test/burn/WixToolsetTest.BurnE2E/UpdateBundleTests.cs index df666833..f7ec8647 100644 --- a/src/test/burn/WixToolsetTest.BurnE2E/UpdateBundleTests.cs +++ b/src/test/burn/WixToolsetTest.BurnE2E/UpdateBundleTests.cs | |||
@@ -242,5 +242,41 @@ namespace WixToolsetTest.BurnE2E | |||
242 | packageBv1.VerifyInstalled(false); | 242 | packageBv1.VerifyInstalled(false); |
243 | packageBv2.VerifyInstalled(false); | 243 | packageBv2.VerifyInstalled(false); |
244 | } | 244 | } |
245 | |||
246 | // Installs bundle Bv1.0 then attempts an update to bundle Bv2.0 during modify (server exists, v2.0 feed with wrong hash). | ||
247 | [RuntimeFact] | ||
248 | public void CanBlockWrongUpdateBundleFromDownloadInsteadOfModify() | ||
249 | { | ||
250 | var packageBv1 = this.CreatePackageInstaller("PackageBv1"); | ||
251 | var packageBv2 = this.CreatePackageInstaller("PackageBv2"); | ||
252 | var bundleBv1 = this.CreateBundleInstaller("BundleBv1"); | ||
253 | var bundleBv2 = this.CreateBundleInstaller("BundleBv2"); | ||
254 | var webServer = this.CreateWebServer(); | ||
255 | |||
256 | webServer.AddFiles(new Dictionary<string, string> | ||
257 | { | ||
258 | { "/BundleB/feed", Path.Combine(this.TestContext.TestDataFolder, "FeedBv2.0_wronghash.xml") }, | ||
259 | { "/BundleB/2.0/BundleB.exe", bundleBv2.Bundle }, | ||
260 | }); | ||
261 | webServer.Start(); | ||
262 | |||
263 | packageBv1.VerifyInstalled(false); | ||
264 | packageBv2.VerifyInstalled(false); | ||
265 | |||
266 | bundleBv1.Install(); | ||
267 | bundleBv1.VerifyRegisteredAndInPackageCache(); | ||
268 | |||
269 | packageBv1.VerifyInstalled(true); | ||
270 | packageBv2.VerifyInstalled(false); | ||
271 | |||
272 | // Run the v1 bundle requesting an update bundle. | ||
273 | bundleBv1.Modify(unchecked((int)0x80091007), arguments: "-checkupdate"); | ||
274 | |||
275 | bundleBv1.VerifyRegisteredAndInPackageCache(); | ||
276 | bundleBv2.VerifyUnregisteredAndRemovedFromPackageCache(); | ||
277 | |||
278 | packageBv1.VerifyInstalled(true); | ||
279 | packageBv2.VerifyInstalled(false); | ||
280 | } | ||
245 | } | 281 | } |
246 | } | 282 | } |