aboutsummaryrefslogtreecommitdiff
path: root/src/ext
diff options
context:
space:
mode:
authorBob Arnson <bob@firegiant.com>2024-01-01 22:07:46 -0500
committerBob Arnson <github@bobs.org>2024-01-01 22:53:44 -0500
commit44a13ff738267fc7e1147e46cd86df6cdbba7bb3 (patch)
tree3a7451f479e84a666605ab74ac2ee44d94cf576b /src/ext
parent59ca47751ea1d59198e01b7e6a0a3d9fc144088e (diff)
downloadwix-44a13ff738267fc7e1147e46cd86df6cdbba7bb3.tar.gz
wix-44a13ff738267fc7e1147e46cd86df6cdbba7bb3.tar.bz2
wix-44a13ff738267fc7e1147e46cd86df6cdbba7bb3.zip
Remove warning for `Wix` bundle variable prefix.
It's a bit overzealous. Fixes https://github.com/wixtoolset/issues/issues/7579.
Diffstat (limited to 'src/ext')
-rw-r--r--src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs35
-rw-r--r--src/ext/NetFx/test/WixToolsetTest.Netfx/TestData/UsingNetFxSearches/BundleLatest.wxs13
-rw-r--r--src/ext/Util/test/WixToolsetTest.Util/TestData/BundleWithSearches/BundleUsingDiscouragedVariableNames.wxs19
-rw-r--r--src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs47
4 files changed, 48 insertions, 66 deletions
diff --git a/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs b/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs
index bb3b7b35..27a19116 100644
--- a/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs
+++ b/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs
@@ -109,6 +109,41 @@ namespace WixToolsetTest.Netfx
109 } 109 }
110 110
111 [Fact] 111 [Fact]
112 public void CanBuildUsingNetFxSearches()
113 {
114 using (var fs = new DisposableFileSystem())
115 {
116 var baseFolder = fs.GetFolder();
117 var bundleFile = Path.Combine(baseFolder, "bin", "test.exe");
118 var bundleSourceFolder = TestData.Get(@"TestData\UsingNetFxSearches");
119 var intermediateFolder = Path.Combine(baseFolder, "obj");
120
121 var extensionResult = WixRunner.Execute(warningsAsErrors: true, new[]
122 {
123 "extension", "add",
124 "WixToolset.Bal.wixext",
125 "extension", "add",
126 "WixToolset.Util.wixext",
127 });
128
129 var compileResult = WixRunner.Execute(new[]
130 {
131 "build",
132 Path.Combine(bundleSourceFolder, "BundleLatest.wxs"),
133 "-ext", "WixToolset.Bal.wixext",
134 "-ext", "WixToolset.Util.wixext",
135 "-ext", TestData.Get(@"WixToolset.Netfx.wixext.dll"),
136 "-intermediateFolder", intermediateFolder,
137 "-o", bundleFile,
138 "-arch", "x64",
139 });
140 compileResult.AssertSuccess();
141
142 Assert.True(File.Exists(bundleFile));
143 }
144 }
145
146 [Fact]
112 public void CanBuildUsingNativeImage() 147 public void CanBuildUsingNativeImage()
113 { 148 {
114 var folder = TestData.Get(@"TestData\UsingNativeImage"); 149 var folder = TestData.Get(@"TestData\UsingNativeImage");
diff --git a/src/ext/NetFx/test/WixToolsetTest.Netfx/TestData/UsingNetFxSearches/BundleLatest.wxs b/src/ext/NetFx/test/WixToolsetTest.Netfx/TestData/UsingNetFxSearches/BundleLatest.wxs
new file mode 100644
index 00000000..1ee62d4b
--- /dev/null
+++ b/src/ext/NetFx/test/WixToolsetTest.Netfx/TestData/UsingNetFxSearches/BundleLatest.wxs
@@ -0,0 +1,13 @@
1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
2 <Bundle Name="NetFxPackageGroup481" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="{1A204524-03F4-4641-BDF3-2A272A34A888}">
3 <BootstrapperApplication>
4 <bal:WixStandardBootstrapperApplication LicenseUrl="http://wixtoolset.org/about/license/" Theme="hyperlinkLicense" />
5 </BootstrapperApplication>
6
7 <util:RegistrySearchRef Id="WixNetFramework4xInstalledRelease" />
8
9 <Chain>
10 <PackageGroupRef Id="NetFx481RedistAsPrereq" />
11 </Chain>
12 </Bundle>
13</Wix>
diff --git a/src/ext/Util/test/WixToolsetTest.Util/TestData/BundleWithSearches/BundleUsingDiscouragedVariableNames.wxs b/src/ext/Util/test/WixToolsetTest.Util/TestData/BundleWithSearches/BundleUsingDiscouragedVariableNames.wxs
deleted file mode 100644
index 68f46af8..00000000
--- a/src/ext/Util/test/WixToolsetTest.Util/TestData/BundleWithSearches/BundleUsingDiscouragedVariableNames.wxs
+++ /dev/null
@@ -1,19 +0,0 @@
1<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
2 <Bundle Name="!(loc.BundleName)" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="047730a5-30fe-4a62-a520-da9381b8226a">
3 <BootstrapperApplication>
4 <BootstrapperApplicationDll SourceFile="fakeba.dll" />
5 </BootstrapperApplication>
6
7 <util:RegistrySearch
8 Variable="WixCustomVariable"
9 Root="HKLM"
10 Key="SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Custom"
11 Value="Release"
12 Result="value"
13 Bitness="always64" />
14
15 <Chain>
16 <MsiPackage SourceFile="test.msi" />
17 </Chain>
18 </Bundle>
19</Wix>
diff --git a/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs b/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs
index 7cc3a6d4..06e70dcf 100644
--- a/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs
+++ b/src/ext/Util/test/WixToolsetTest.Util/UtilExtensionFixture.cs
@@ -471,53 +471,6 @@ namespace WixToolsetTest.Util
471 } 471 }
472 472
473 [Fact] 473 [Fact]
474 public void CanBuildBundleWithWarningsWithSearchesUsingDiscouragedVariableNames()
475 {
476 var folder = TestData.Get("TestData", "BundleWithSearches");
477 var rootFolder = TestData.Get();
478 var wixext = Path.Combine(rootFolder, "WixToolset.Util.wixext.dll");
479
480 using (var fs = new DisposableFileSystem())
481 {
482 var baseFolder = fs.GetFolder();
483 var intermediateFolder = Path.Combine(baseFolder, "obj");
484 var bundlePath = Path.Combine(baseFolder, @"bin\test.exe");
485 var baFolderPath = Path.Combine(baseFolder, "ba");
486 var extractFolderPath = Path.Combine(baseFolder, "extract");
487
488 var result = WixRunner.Execute(false, new[]
489 {
490 "build",
491 Path.Combine(folder, "BundleUsingDiscouragedVariableNames.wxs"),
492 "-ext", wixext,
493 "-loc", Path.Combine(folder, "Bundle.en-us.wxl"),
494 "-bindpath", Path.Combine(folder, "data"),
495 "-intermediateFolder", intermediateFolder,
496 "-o", bundlePath,
497 });
498
499 var messages = result.Messages.Select(m => m.ToString()).ToList();
500 messages.Sort();
501
502 WixAssert.CompareLineByLine(new[]
503 {
504 "The *Search/@Variable attribute's value begins with the reserved prefix 'Wix'. Some prefixes are reserved by the WiX toolset for well-known values. Change your attribute's value to not begin with the same prefix.",
505 }, messages.ToArray());
506
507 result.AssertSuccess();
508
509 var extractResult = BundleExtractor.ExtractBAContainer(null, bundlePath, baFolderPath, extractFolderPath);
510 extractResult.AssertSuccess();
511
512 var utilSearches = extractResult.GetManifestTestXmlLines("/burn:BurnManifest/*[self::burn:ExtensionSearch or self::burn:DirectorySearch or self::burn:FileSearch or self::burn:MsiProductSearch or self::burn:RegistrySearch]");
513 WixAssert.CompareLineByLine(new[]
514 {
515 @"<RegistrySearch Id='wrsvJmsaXS39nKFUh9CVvRE6SSC4qk' Variable='WixCustomVariable' Root='HKLM' Key='SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Custom' Value='Release' Win64='yes' Type='value' VariableType='string' />",
516 }, utilSearches);
517 }
518 }
519
520 [Fact]
521 public void CannotBuildBundleWithSearchesUsingBuiltinVariableNames() 474 public void CannotBuildBundleWithSearchesUsingBuiltinVariableNames()
522 { 475 {
523 var folder = TestData.Get("TestData", "BundleWithSearches"); 476 var folder = TestData.Get("TestData", "BundleWithSearches");