aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/wix/test/WixToolsetTest.CoreIntegration/LongPathFixture.cs16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/wix/test/WixToolsetTest.CoreIntegration/LongPathFixture.cs b/src/wix/test/WixToolsetTest.CoreIntegration/LongPathFixture.cs
index 2cada64d..3bf7f006 100644
--- a/src/wix/test/WixToolsetTest.CoreIntegration/LongPathFixture.cs
+++ b/src/wix/test/WixToolsetTest.CoreIntegration/LongPathFixture.cs
@@ -36,6 +36,7 @@ namespace WixToolsetTest.CoreIntegration
36 } 36 }
37 37
38 var intermediateFolder = Path.Combine(baseFolder, "obj"); 38 var intermediateFolder = Path.Combine(baseFolder, "obj");
39 var outputPath = Path.Combine(baseFolder, "bin", "test.msi");
39 40
40 var result = WixRunner.Execute( 41 var result = WixRunner.Execute(
41 [ 42 [
@@ -45,9 +46,22 @@ namespace WixToolsetTest.CoreIntegration
45 "-loc", Path.Combine(folder, "Package.en-us.wxl"), 46 "-loc", Path.Combine(folder, "Package.en-us.wxl"),
46 "-bindpath", Path.Combine(folder, "data"), 47 "-bindpath", Path.Combine(folder, "data"),
47 "-intermediateFolder", intermediateFolder, 48 "-intermediateFolder", intermediateFolder,
48 "-o", Path.Combine(baseFolder, "bin", "test.msi") 49 "-o", outputPath,
49 ]); 50 ]);
50 51
52 if (result.ExitCode == 223/*WindowsInstallerBackendErrors.OpenDatabaseFailed*/
53 && result.Messages.Length > 0)
54 {
55 // In a bit of a twist, WiX's long-path support relies on 8.3 short file names. As
56 // [Raymond Chen suggests](https://devblogs.microsoft.com/oldnewthing/20181004-00/?p=99895),
57 // not all file systems support 8.3 names. That includes ReFS, the file system used
58 // by Dev Drives. So pass the test if the failure is due to missing 8.3 names.
59 Assert.Equal(outputPath, result.Messages[0].MessageArgs[0]);
60 Assert.Equal("The Windows Installer service failed to start. Contact your support personnel.", result.Messages[0].MessageArgs[1]);
61
62 return;
63 }
64
51 result.AssertSuccess(); 65 result.AssertSuccess();
52 66
53 Assert.True(File.Exists(Path.Combine(baseFolder, "bin", "test.msi"))); 67 Assert.True(File.Exists(Path.Combine(baseFolder, "bin", "test.msi")));