aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2021-01-07 15:12:13 -0800
committerRob Mensching <rob@firegiant.com>2021-01-07 15:17:07 -0800
commita36c59a4911a7db525f6b03dc98fac5adde163b4 (patch)
tree74b6b1edab6547fc6bc4db1c75fefa94a00bed65 /src/test
parent1b10d394bc88c2840b355bb72c1a502181c28ca2 (diff)
downloadwix-a36c59a4911a7db525f6b03dc98fac5adde163b4.tar.gz
wix-a36c59a4911a7db525f6b03dc98fac5adde163b4.tar.bz2
wix-a36c59a4911a7db525f6b03dc98fac5adde163b4.zip
Support environment variables with parens in the preprocessor
Fixes wixtoolset/issues#4484
Diffstat (limited to 'src/test')
-rw-r--r--src/test/WixToolsetTest.CoreIntegration/PreprocessorFixture.cs18
-rw-r--r--src/test/WixToolsetTest.CoreIntegration/TestData/Preprocessor/EnvParens.wxs4
2 files changed, 22 insertions, 0 deletions
diff --git a/src/test/WixToolsetTest.CoreIntegration/PreprocessorFixture.cs b/src/test/WixToolsetTest.CoreIntegration/PreprocessorFixture.cs
index a6504cb9..aad3ed73 100644
--- a/src/test/WixToolsetTest.CoreIntegration/PreprocessorFixture.cs
+++ b/src/test/WixToolsetTest.CoreIntegration/PreprocessorFixture.cs
@@ -40,6 +40,24 @@ namespace WixToolsetTest.CoreIntegration
40 } 40 }
41 41
42 [Fact] 42 [Fact]
43 /// <remarks>
44 /// This test will fail on 32-bit operating systems because it depends on "CommonProgramFiles(x86)"
45 /// which is only defined on 64-bit Windows.
46 /// </remarks>
47 public void SupportParensInEnvironmentVariables()
48 {
49 var folder = TestData.Get(@"TestData", "Preprocessor");
50
51 var serviceProvider = WixToolsetServiceProviderFactory.CreateServiceProvider();
52 var context = serviceProvider.GetService<IPreprocessContext>();
53 context.SourcePath = Path.Combine(folder, "EnvParens.wxs");
54
55 var preprocessor = serviceProvider.GetService<IPreprocessor>();
56 var result = preprocessor.Preprocess(context);
57 Assert.NotNull(result.Document);
58 }
59
60 [Fact]
43 public void VariableRedefinitionIsAWarning() 61 public void VariableRedefinitionIsAWarning()
44 { 62 {
45 var folder = TestData.Get(@"TestData\Variables"); 63 var folder = TestData.Get(@"TestData\Variables");
diff --git a/src/test/WixToolsetTest.CoreIntegration/TestData/Preprocessor/EnvParens.wxs b/src/test/WixToolsetTest.CoreIntegration/TestData/Preprocessor/EnvParens.wxs
new file mode 100644
index 00000000..68d115c5
--- /dev/null
+++ b/src/test/WixToolsetTest.CoreIntegration/TestData/Preprocessor/EnvParens.wxs
@@ -0,0 +1,4 @@
1<?xml version="1.0" encoding="utf-8" ?>
2<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
3 <?define Test = "$(env.CommonProgramFiles(x86))" ?>
4</Wix>