summaryrefslogtreecommitdiff
path: root/src/wix/test/WixToolsetTest.Sdk/MsbuildFixture.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/wix/test/WixToolsetTest.Sdk/MsbuildFixture.cs')
-rw-r--r--src/wix/test/WixToolsetTest.Sdk/MsbuildFixture.cs92
1 files changed, 64 insertions, 28 deletions
diff --git a/src/wix/test/WixToolsetTest.Sdk/MsbuildFixture.cs b/src/wix/test/WixToolsetTest.Sdk/MsbuildFixture.cs
index 64d05a59..05de1e2a 100644
--- a/src/wix/test/WixToolsetTest.Sdk/MsbuildFixture.cs
+++ b/src/wix/test/WixToolsetTest.Sdk/MsbuildFixture.cs
@@ -233,6 +233,42 @@ namespace WixToolsetTest.Sdk
233 [InlineData(BuildSystem.DotNetCoreSdk)] 233 [InlineData(BuildSystem.DotNetCoreSdk)]
234 [InlineData(BuildSystem.MSBuild)] 234 [InlineData(BuildSystem.MSBuild)]
235 [InlineData(BuildSystem.MSBuild64)] 235 [InlineData(BuildSystem.MSBuild64)]
236 public void CanBuildMsiPackageWithBindVariables(BuildSystem buildSystem)
237 {
238 var sourceFolder = TestData.Get("TestData", "MsiPackageWithBindVariables");
239
240 var baseFolder = String.Empty;
241
242 using (var fs = new TestDataFolderFileSystem())
243 {
244 fs.Initialize(sourceFolder);
245 baseFolder = fs.BaseFolder;
246
247 var binFolder = Path.Combine(baseFolder, @"bin\");
248 var projectPath = Path.Combine(baseFolder, "MsiPackageWithBindVariables.wixproj");
249
250 var result = MsbuildUtilities.BuildProject(buildSystem, projectPath, new[] {
251 MsbuildUtilities.GetQuotedPropertySwitch(buildSystem, "WixMSBuildProps", MsbuildFixture.WixPropsPath)
252 });
253 result.AssertSuccess();
254
255 var paths = Directory.EnumerateFiles(binFolder, @"*.*", SearchOption.AllDirectories)
256 .Select(s => s.Substring(baseFolder.Length + 1))
257 .OrderBy(s => s)
258 .ToArray();
259 WixAssert.CompareLineByLine(new[]
260 {
261 @"bin\Release\en-US\cab1.cab",
262 @"bin\Release\en-US\MsiPackageWithBindVariables.msi",
263 @"bin\Release\en-US\MsiPackageWithBindVariables.wixpdb",
264 }, paths);
265 }
266 }
267
268 [Theory]
269 [InlineData(BuildSystem.DotNetCoreSdk)]
270 [InlineData(BuildSystem.MSBuild)]
271 [InlineData(BuildSystem.MSBuild64)]
236 public void CanBuildWithDefaultAndExplicitlyFullWixpdbs(BuildSystem buildSystem) 272 public void CanBuildWithDefaultAndExplicitlyFullWixpdbs(BuildSystem buildSystem)
237 { 273 {
238 var expectedOutputs = new[] 274 var expectedOutputs = new[]
@@ -299,33 +335,6 @@ namespace WixToolsetTest.Sdk
299 } 335 }
300 } 336 }
301 337
302 private void AssertWixpdb(BuildSystem buildSystem, string debugType, string[] expectedOutputFiles)
303 {
304 var sourceFolder = TestData.Get(@"TestData\SimpleMsiPackage\MsiPackage");
305
306 using (var fs = new TestDataFolderFileSystem())
307 {
308 fs.Initialize(sourceFolder);
309 var baseFolder = fs.BaseFolder;
310 var binFolder = Path.Combine(baseFolder, @"bin\");
311 var projectPath = Path.Combine(baseFolder, "MsiPackage.wixproj");
312
313 var result = MsbuildUtilities.BuildProject(buildSystem, projectPath, new[]
314 {
315 MsbuildUtilities.GetQuotedPropertySwitch(buildSystem, "WixMSBuildProps", MsbuildFixture.WixPropsPath),
316 debugType == null ? String.Empty : $"-p:DebugType={debugType}",
317 "-p:SuppressValidation=true"
318 });
319 result.AssertSuccess();
320
321 var paths = Directory.EnumerateFiles(binFolder, @"*.*", SearchOption.AllDirectories)
322 .Select(s => s.Substring(baseFolder.Length + 1))
323 .OrderBy(s => s)
324 .ToArray();
325 WixAssert.CompareLineByLine(expectedOutputFiles, paths);
326 }
327 }
328
329 [Theory] 338 [Theory]
330 [InlineData(BuildSystem.DotNetCoreSdk)] 339 [InlineData(BuildSystem.DotNetCoreSdk)]
331 [InlineData(BuildSystem.MSBuild)] 340 [InlineData(BuildSystem.MSBuild)]
@@ -474,7 +483,7 @@ namespace WixToolsetTest.Sdk
474 var path = Directory.EnumerateFiles(binFolder, @"*.*", SearchOption.AllDirectories) 483 var path = Directory.EnumerateFiles(binFolder, @"*.*", SearchOption.AllDirectories)
475 .Select(s => s.Substring(baseFolder.Length + 1)) 484 .Select(s => s.Substring(baseFolder.Length + 1))
476 .Single(); 485 .Single();
477 WixAssert.StringEqual(@"bin\x86\Release\SimpleWixlib.wixlib", path); 486 WixAssert.StringEqual(@"bin\Release\SimpleWixlib.wixlib", path);
478 } 487 }
479 } 488 }
480 489
@@ -637,6 +646,33 @@ namespace WixToolsetTest.Sdk
637 } 646 }
638 } 647 }
639 648
649 private void AssertWixpdb(BuildSystem buildSystem, string debugType, string[] expectedOutputFiles)
650 {
651 var sourceFolder = TestData.Get(@"TestData\SimpleMsiPackage\MsiPackage");
652
653 using (var fs = new TestDataFolderFileSystem())
654 {
655 fs.Initialize(sourceFolder);
656 var baseFolder = fs.BaseFolder;
657 var binFolder = Path.Combine(baseFolder, @"bin\");
658 var projectPath = Path.Combine(baseFolder, "MsiPackage.wixproj");
659
660 var result = MsbuildUtilities.BuildProject(buildSystem, projectPath, new[]
661 {
662 MsbuildUtilities.GetQuotedPropertySwitch(buildSystem, "WixMSBuildProps", MsbuildFixture.WixPropsPath),
663 debugType == null ? String.Empty : $"-p:DebugType={debugType}",
664 "-p:SuppressValidation=true"
665 });
666 result.AssertSuccess();
667
668 var paths = Directory.EnumerateFiles(binFolder, @"*.*", SearchOption.AllDirectories)
669 .Select(s => s.Substring(baseFolder.Length + 1))
670 .OrderBy(s => s)
671 .ToArray();
672 WixAssert.CompareLineByLine(expectedOutputFiles, paths);
673 }
674 }
675
640 private static string ExtractWarningFromMessage(string message, string baseFolder) 676 private static string ExtractWarningFromMessage(string message, string baseFolder)
641 { 677 {
642 const string prefix = ": warning "; 678 const string prefix = ": warning ";