From b71c36c6fdc44268de75540474c639b64e53f1b7 Mon Sep 17 00:00:00 2001 From: Bob Arnson Date: Mon, 11 Dec 2017 19:16:46 -0500 Subject: Add failing ManualUpgrade test for issue resolving RemoveExistingProducts. --- .../ProgramFixture.cs | 36 ++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'src/test/WixToolsetTest.CoreIntegration/ProgramFixture.cs') diff --git a/src/test/WixToolsetTest.CoreIntegration/ProgramFixture.cs b/src/test/WixToolsetTest.CoreIntegration/ProgramFixture.cs index 1ce445e8..1b7a18cf 100644 --- a/src/test/WixToolsetTest.CoreIntegration/ProgramFixture.cs +++ b/src/test/WixToolsetTest.CoreIntegration/ProgramFixture.cs @@ -209,6 +209,42 @@ namespace WixToolsetTest.CoreIntegration } } + [Fact] + public void CanBuildManualUpgrade() + { + var folder = TestData.Get(@"TestData\ManualUpgrade"); + + using (var fs = new DisposableFileSystem()) + { + var intermediateFolder = fs.GetFolder(); + + var program = new Program(); + var result = program.Run(new WixToolsetServiceProvider(), new[] + { + "build", + Path.Combine(folder, "Package.wxs"), + Path.Combine(folder, "PackageComponents.wxs"), + "-loc", Path.Combine(folder, "Package.en-us.wxl"), + "-bindpath", Path.Combine(folder, "data"), + "-intermediateFolder", intermediateFolder, + "-o", Path.Combine(intermediateFolder, @"bin\test.msi") + }); + + Assert.Equal(0, result); + + Assert.True(File.Exists(Path.Combine(intermediateFolder, @"bin\test.msi"))); + Assert.True(File.Exists(Path.Combine(intermediateFolder, @"bin\test.wixpdb"))); + Assert.True(File.Exists(Path.Combine(intermediateFolder, @"bin\MsiPackage\test.txt"))); + + var intermediate = Intermediate.Load(Path.Combine(intermediateFolder, @"bin\test.wir")); + var section = intermediate.Sections.Single(); + + var wixFile = section.Tuples.OfType().Single(); + Assert.Equal(Path.Combine(folder, @"data\test.txt"), wixFile[WixFileTupleFields.Source].AsPath().Path); + Assert.Equal(@"test.txt", wixFile[WixFileTupleFields.Source].PreviousValue.AsPath().Path); + } + } + [Fact(Skip = "Not implemented yet.")] public void CanBuildInstanceTransform() { -- cgit v1.2.3-55-g6feb