aboutsummaryrefslogtreecommitdiff
path: root/src/test/WixToolsetTest.BuildTasks/MsbuildFixture.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/WixToolsetTest.BuildTasks/MsbuildFixture.cs')
-rw-r--r--src/test/WixToolsetTest.BuildTasks/MsbuildFixture.cs60
1 files changed, 60 insertions, 0 deletions
diff --git a/src/test/WixToolsetTest.BuildTasks/MsbuildFixture.cs b/src/test/WixToolsetTest.BuildTasks/MsbuildFixture.cs
index 9f761c32..c52bb22d 100644
--- a/src/test/WixToolsetTest.BuildTasks/MsbuildFixture.cs
+++ b/src/test/WixToolsetTest.BuildTasks/MsbuildFixture.cs
@@ -52,6 +52,66 @@ namespace WixToolsetTest.BuildTasks
52 } 52 }
53 53
54 [Fact] 54 [Fact]
55 public void CanBuildWithDefaultAndExplicitlyFullWixpdbs()
56 {
57 var expectedOutputs = new[]
58 {
59 @"bin\en-US\cab1.cab",
60 @"bin\en-US\MsiPackage.msi",
61 @"bin\en-US\MsiPackage.wixpdb",
62 };
63
64 this.AssertWixpdb(null, expectedOutputs);
65 this.AssertWixpdb("Full", expectedOutputs);
66 }
67
68 [Fact]
69 public void CanBuildWithPartialWixpdb()
70 {
71 this.AssertWixpdb("partial", new[]
72 {
73 @"bin\en-US\MsiPackage.wixpdb",
74 });
75 }
76
77 [Fact]
78 public void CanBuildWithNoWixpdb()
79 {
80 this.AssertWixpdb("NONE", new[]
81 {
82 @"bin\en-US\cab1.cab",
83 @"bin\en-US\MsiPackage.msi",
84 });
85 }
86
87 private void AssertWixpdb(string wixpdbType, string[] expectedOutputFiles)
88 {
89 var projectPath = TestData.Get(@"TestData\SimpleMsiPackage\MsiPackage\MsiPackage.wixproj");
90
91 using (var fs = new DisposableFileSystem())
92 {
93 var baseFolder = fs.GetFolder();
94 var binFolder = Path.Combine(baseFolder, @"bin\");
95 var intermediateFolder = Path.Combine(baseFolder, @"obj\");
96
97 var result = MsbuildRunner.Execute(projectPath, new[]
98 {
99 wixpdbType == null ? String.Empty : $"-p:WixPdbType={wixpdbType}",
100 $"-p:WixTargetsPath={WixTargetsPath}",
101 $"-p:IntermediateOutputPath={intermediateFolder}",
102 $"-p:OutputPath={binFolder}",
103 });
104 result.AssertSuccess();
105
106 var paths = Directory.EnumerateFiles(binFolder, @"*.*", SearchOption.AllDirectories)
107 .Select(s => s.Substring(baseFolder.Length + 1))
108 .OrderBy(s => s)
109 .ToArray();
110 Assert.Equal(expectedOutputFiles, paths);
111 }
112 }
113
114 [Fact]
55 public void CanBuild64BitMsiPackage() 115 public void CanBuild64BitMsiPackage()
56 { 116 {
57 var projectPath = TestData.Get(@"TestData\SimpleMsiPackage\MsiPackage\MsiPackage.wixproj"); 117 var projectPath = TestData.Get(@"TestData\SimpleMsiPackage\MsiPackage\MsiPackage.wixproj");