diff options
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/WixToolsetTest.CoreIntegration/PatchFixture.cs | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/src/test/WixToolsetTest.CoreIntegration/PatchFixture.cs b/src/test/WixToolsetTest.CoreIntegration/PatchFixture.cs index 774850ec..483e3fd5 100644 --- a/src/test/WixToolsetTest.CoreIntegration/PatchFixture.cs +++ b/src/test/WixToolsetTest.CoreIntegration/PatchFixture.cs | |||
@@ -93,11 +93,13 @@ namespace WixToolsetTest.CoreIntegration | |||
93 | 93 | ||
94 | using (var fs = new DisposableFileSystem()) | 94 | using (var fs = new DisposableFileSystem()) |
95 | { | 95 | { |
96 | var tempFolder = fs.GetFolder(); | 96 | var tempFolderBaseline = fs.GetFolder(); |
97 | var tempFolderUpdate = fs.GetFolder(); | ||
98 | var tempFolderPatch = fs.GetFolder(); | ||
97 | 99 | ||
98 | var baselinePdb = BuildMsi("Baseline.msi", folder, tempFolder, "1.0.0", "1.0.0", "1.0.0"); | 100 | var baselinePdb = BuildMsi("Baseline.msi", folder, tempFolderBaseline, "1.0.0", "1.0.0", "1.0.0"); |
99 | var update1Pdb = BuildMsi("Update.msi", folder, tempFolder, "1.0.1", "1.0.1", "1.0.1"); | 101 | var update1Pdb = BuildMsi("Update.msi", folder, tempFolderUpdate, "1.0.1", "1.0.1", "1.0.1"); |
100 | var patchPdb = BuildMsp("Patch1.msp", folder, tempFolder, "1.0.1", hasNoFiles: true); | 102 | var patchPdb = BuildMsp("Patch1.msp", folder, tempFolderPatch, "1.0.1", bindpaths: new[] { Path.GetDirectoryName(baselinePdb), Path.GetDirectoryName(update1Pdb) }, hasNoFiles: true); |
101 | var patchPath = Path.ChangeExtension(patchPdb, ".msp"); | 103 | var patchPath = Path.ChangeExtension(patchPdb, ".msp"); |
102 | 104 | ||
103 | Assert.True(File.Exists(baselinePdb)); | 105 | Assert.True(File.Exists(baselinePdb)); |
@@ -116,9 +118,9 @@ namespace WixToolsetTest.CoreIntegration | |||
116 | 118 | ||
117 | var baselinePdb = BuildMsi("Baseline.msi", Path.Combine(folder, "PackageA"), tempFolder, "1.0.0", "A", "B"); | 119 | var baselinePdb = BuildMsi("Baseline.msi", Path.Combine(folder, "PackageA"), tempFolder, "1.0.0", "A", "B"); |
118 | var updatePdb = BuildMsi("Update.msi", Path.Combine(folder, "PackageA"), tempFolder, "1.0.1", "A", "B"); | 120 | var updatePdb = BuildMsi("Update.msi", Path.Combine(folder, "PackageA"), tempFolder, "1.0.1", "A", "B"); |
119 | var patchAPdb = BuildMsp("PatchA.msp", Path.Combine(folder, "PatchA"), tempFolder, "1.0.1", true); | 121 | var patchAPdb = BuildMsp("PatchA.msp", Path.Combine(folder, "PatchA"), tempFolder, "1.0.1", hasNoFiles: true); |
120 | var patchBPdb = BuildMsp("PatchB.msp", Path.Combine(folder, "PatchB"), tempFolder, "1.0.1", true); | 122 | var patchBPdb = BuildMsp("PatchB.msp", Path.Combine(folder, "PatchB"), tempFolder, "1.0.1", hasNoFiles: true); |
121 | var patchCPdb = BuildMsp("PatchC.msp", Path.Combine(folder, "PatchC"), tempFolder, "1.0.1", true); | 123 | var patchCPdb = BuildMsp("PatchC.msp", Path.Combine(folder, "PatchC"), tempFolder, "1.0.1", hasNoFiles: true); |
122 | var bundleAPdb = BuildBundle("BundleA.exe", Path.Combine(folder, "BundleA"), tempFolder); | 124 | var bundleAPdb = BuildBundle("BundleA.exe", Path.Combine(folder, "BundleA"), tempFolder); |
123 | var bundleBPdb = BuildBundle("BundleB.exe", Path.Combine(folder, "BundleB"), tempFolder); | 125 | var bundleBPdb = BuildBundle("BundleB.exe", Path.Combine(folder, "BundleB"), tempFolder); |
124 | var bundleCPdb = BuildBundle("BundleC.exe", Path.Combine(folder, "BundleC"), tempFolder); | 126 | var bundleCPdb = BuildBundle("BundleC.exe", Path.Combine(folder, "BundleC"), tempFolder); |
@@ -206,11 +208,11 @@ namespace WixToolsetTest.CoreIntegration | |||
206 | return Path.ChangeExtension(outputPath, ".wixpdb"); | 208 | return Path.ChangeExtension(outputPath, ".wixpdb"); |
207 | } | 209 | } |
208 | 210 | ||
209 | private static string BuildMsp(string outputName, string sourceFolder, string baseFolder, string defineV, bool hasNoFiles = false) | 211 | private static string BuildMsp(string outputName, string sourceFolder, string baseFolder, string defineV, IEnumerable<string> bindpaths = null, bool hasNoFiles = false) |
210 | { | 212 | { |
211 | var outputPath = Path.Combine(baseFolder, Path.Combine("bin", outputName)); | 213 | var outputPath = Path.Combine(baseFolder, Path.Combine("bin", outputName)); |
212 | 214 | ||
213 | var result = WixRunner.Execute(new[] | 215 | var args = new List<string> |
214 | { | 216 | { |
215 | "build", | 217 | "build", |
216 | hasNoFiles ? "-sw1079" : " ", | 218 | hasNoFiles ? "-sw1079" : " ", |
@@ -219,7 +221,15 @@ namespace WixToolsetTest.CoreIntegration | |||
219 | "-bindpath", Path.Combine(baseFolder, "bin"), | 221 | "-bindpath", Path.Combine(baseFolder, "bin"), |
220 | "-intermediateFolder", Path.Combine(baseFolder, "obj"), | 222 | "-intermediateFolder", Path.Combine(baseFolder, "obj"), |
221 | "-o", outputPath | 223 | "-o", outputPath |
222 | }); | 224 | }; |
225 | |||
226 | foreach (var additionaBindPath in bindpaths ?? Enumerable.Empty<string>()) | ||
227 | { | ||
228 | args.Add("-bindpath"); | ||
229 | args.Add(additionaBindPath); | ||
230 | } | ||
231 | |||
232 | var result = WixRunner.Execute(args.ToArray()); | ||
223 | 233 | ||
224 | result.AssertSuccess(); | 234 | result.AssertSuccess(); |
225 | 235 | ||