diff options
Diffstat (limited to 'src/test')
6 files changed, 101 insertions, 35 deletions
diff --git a/src/test/WixToolsetTest.Util/TestData/XmlConfig/Package.en-us.wxl b/src/test/WixToolsetTest.Util/TestData/XmlConfig/Package.en-us.wxl new file mode 100644 index 00000000..38c12ac1 --- /dev/null +++ b/src/test/WixToolsetTest.Util/TestData/XmlConfig/Package.en-us.wxl | |||
@@ -0,0 +1,11 @@ | |||
1 | <?xml version="1.0" encoding="utf-8"?> | ||
2 | |||
3 | <!-- | ||
4 | This file contains the declaration of all the localizable strings. | ||
5 | --> | ||
6 | <WixLocalization xmlns="http://wixtoolset.org/schemas/v4/wxl" Culture="en-US"> | ||
7 | |||
8 | <String Id="DowngradeError">A newer version of [ProductName] is already installed.</String> | ||
9 | <String Id="FeatureTitle">MsiPackage</String> | ||
10 | |||
11 | </WixLocalization> | ||
diff --git a/src/test/WixToolsetTest.Util/TestData/XmlConfig/Package.wxs b/src/test/WixToolsetTest.Util/TestData/XmlConfig/Package.wxs new file mode 100644 index 00000000..21f75f8f --- /dev/null +++ b/src/test/WixToolsetTest.Util/TestData/XmlConfig/Package.wxs | |||
@@ -0,0 +1,27 @@ | |||
1 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util"> | ||
2 | <Package Name="MsiPackage" Language="1033" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="047730a5-30fe-4a62-a520-da9381b8226a"> | ||
3 | <MajorUpgrade DowngradeErrorMessage="!(loc.DowngradeError)" /> | ||
4 | |||
5 | <Feature Id="ProductFeature" Title="!(loc.FeatureTitle)"> | ||
6 | <Component Id="Del" Directory="INSTALLFOLDER" Guid="3613414c-11f5-40fa-a1f1-a0ba722a6895"> | ||
7 | <util:XmlConfig | ||
8 | Id="DelElement" | ||
9 | File="[INSTALLFOLDER]my.xml" | ||
10 | Action="delete" | ||
11 | Node="element" | ||
12 | VerifyPath="xxx" | ||
13 | ElementPath="//root/sub" | ||
14 | On="install" | ||
15 | Sequence="1" /> | ||
16 | </Component> | ||
17 | </Feature> | ||
18 | </Package> | ||
19 | |||
20 | <Fragment> | ||
21 | <Directory Id="TARGETDIR" Name="SourceDir"> | ||
22 | <Directory Id="ProgramFilesFolder"> | ||
23 | <Directory Id="INSTALLFOLDER" Name="MsiPackage" /> | ||
24 | </Directory> | ||
25 | </Directory> | ||
26 | </Fragment> | ||
27 | </Wix> | ||
diff --git a/src/test/WixToolsetTest.Util/TestData/XmlConfigModule/Module.wxs b/src/test/WixToolsetTest.Util/TestData/XmlConfigModule/Module.wxs new file mode 100644 index 00000000..93f5eeb1 --- /dev/null +++ b/src/test/WixToolsetTest.Util/TestData/XmlConfigModule/Module.wxs | |||
@@ -0,0 +1,34 @@ | |||
1 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util"> | ||
2 | <Module Id="XmlConfigModule" Language="1033" Version="1.0.0.0" Guid="047730a5-30fe-4a62-a520-da9381b8226a"> | ||
3 | |||
4 | <Component Id="Parent" Directory="INSTALLFOLDER"> | ||
5 | <File Id="my.xml" Source="my.xml" /> | ||
6 | <util:XmlConfig | ||
7 | Id="AddElement" | ||
8 | File="[my.xml]" | ||
9 | Action="create" | ||
10 | Node="element" | ||
11 | VerifyPath="xxx" | ||
12 | ElementPath="//root/sub" | ||
13 | On="install" | ||
14 | Sequence="1" /> | ||
15 | </Component> | ||
16 | |||
17 | <Component Id="Child" Directory="INSTALLFOLDER" Guid="4613414c-11f5-40fa-a1f1-a0ba722a6895"> | ||
18 | <util:XmlConfig | ||
19 | Id="ChildElement" | ||
20 | File="[my.xml]" | ||
21 | VerifyPath="xxx" | ||
22 | ElementId="AddElement" | ||
23 | Sequence="1" /> | ||
24 | </Component> | ||
25 | </Module> | ||
26 | |||
27 | <Fragment> | ||
28 | <Directory Id="TARGETDIR" Name="SourceDir"> | ||
29 | <Directory Id="ProgramFilesFolder"> | ||
30 | <Directory Id="INSTALLFOLDER" Name="MsiPackage" /> | ||
31 | </Directory> | ||
32 | </Directory> | ||
33 | </Fragment> | ||
34 | </Wix> | ||
diff --git a/src/test/WixToolsetTest.Util/TestData/XmlConfigModule/my.xml b/src/test/WixToolsetTest.Util/TestData/XmlConfigModule/my.xml new file mode 100644 index 00000000..bad25217 --- /dev/null +++ b/src/test/WixToolsetTest.Util/TestData/XmlConfigModule/my.xml | |||
@@ -0,0 +1 @@ | |||
This is my.xml file. | |||
diff --git a/src/test/WixToolsetTest.Util/UtilExtensionFixture.cs b/src/test/WixToolsetTest.Util/UtilExtensionFixture.cs index a32a7d62..d9440614 100644 --- a/src/test/WixToolsetTest.Util/UtilExtensionFixture.cs +++ b/src/test/WixToolsetTest.Util/UtilExtensionFixture.cs | |||
@@ -173,6 +173,33 @@ namespace WixToolsetTest.Util | |||
173 | } | 173 | } |
174 | 174 | ||
175 | [Fact] | 175 | [Fact] |
176 | public void CanBuildWithXmlConfig() | ||
177 | { | ||
178 | var folder = TestData.Get(@"TestData", "XmlConfig"); | ||
179 | var build = new Builder(folder, typeof(UtilExtensionFactory), new[] { folder }); | ||
180 | |||
181 | var results = build.BuildAndQuery(BuildX64, "Wix4XmlConfig"); | ||
182 | WixAssert.CompareLineByLine(new[] | ||
183 | { | ||
184 | "Wix4XmlConfig:DelElement\t[INSTALLFOLDER]my.xml\t\t//root/sub\txxx\t\t\t289\tDel\t1", | ||
185 | }, results.OrderBy(s => s).ToArray()); | ||
186 | } | ||
187 | |||
188 | [Fact] | ||
189 | public void CanBuildModuleWithXmlConfig() | ||
190 | { | ||
191 | var folder = TestData.Get(@"TestData", "XmlConfigModule"); | ||
192 | var build = new Builder(folder, typeof(UtilExtensionFactory), new[] { folder }); | ||
193 | |||
194 | var results = build.BuildAndQuery(BuildX64, "Wix4XmlConfig"); | ||
195 | WixAssert.CompareLineByLine(new[] | ||
196 | { | ||
197 | "Wix4XmlConfig:AddElement.047730A5_30FE_4A62_A520_DA9381B8226A\t[my.xml.047730A5_30FE_4A62_A520_DA9381B8226A]\t\t//root/sub\txxx\t\t\t273\tParent.047730A5_30FE_4A62_A520_DA9381B8226A\t1", | ||
198 | "Wix4XmlConfig:ChildElement.047730A5_30FE_4A62_A520_DA9381B8226A\t[my.xml.047730A5_30FE_4A62_A520_DA9381B8226A]\tAddElement.047730A5_30FE_4A62_A520_DA9381B8226A\t\txxx\t\t\t0\tChild.047730A5_30FE_4A62_A520_DA9381B8226A\t1", | ||
199 | }, results.OrderBy(s => s).ToArray()); | ||
200 | } | ||
201 | |||
202 | [Fact] | ||
176 | public void CanBuildBundleWithSearches() | 203 | public void CanBuildBundleWithSearches() |
177 | { | 204 | { |
178 | var burnStubPath = TestData.Get(@"TestData\.Data\burn.exe"); | 205 | var burnStubPath = TestData.Get(@"TestData\.Data\burn.exe"); |
diff --git a/src/test/WixToolsetTest.Util/WixToolsetTest.Util.csproj b/src/test/WixToolsetTest.Util/WixToolsetTest.Util.csproj index 50776c2c..e77ecbed 100644 --- a/src/test/WixToolsetTest.Util/WixToolsetTest.Util.csproj +++ b/src/test/WixToolsetTest.Util/WixToolsetTest.Util.csproj | |||
@@ -12,41 +12,7 @@ | |||
12 | </PropertyGroup> | 12 | </PropertyGroup> |
13 | 13 | ||
14 | <ItemGroup> | 14 | <ItemGroup> |
15 | <Content Include="TestData\.Data\burn.exe" CopyToOutputDirectory="PreserveNewest" /> | 15 | <Content Include="TestData\**" CopyToOutputDirectory="PreserveNewest" /> |
16 | <Content Include="TestData\BundleWithSearches\data\fakeba.dll" CopyToOutputDirectory="PreserveNewest" /> | ||
17 | <Content Include="TestData\BundleWithSearches\data\MsiPackage\Shared.dll" CopyToOutputDirectory="PreserveNewest" /> | ||
18 | <Content Include="TestData\BundleWithSearches\data\MsiPackage\test.txt" CopyToOutputDirectory="PreserveNewest" /> | ||
19 | <Content Include="TestData\BundleWithSearches\data\test.msi" CopyToOutputDirectory="PreserveNewest" /> | ||
20 | <Content Include="TestData\BundleWithSearches\Bundle.en-us.wxl" CopyToOutputDirectory="PreserveNewest" /> | ||
21 | <Content Include="TestData\BundleWithSearches\Bundle.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
22 | <Content Include="TestData\UsingFileShare\example.txt" CopyToOutputDirectory="PreserveNewest" /> | ||
23 | <Content Include="TestData\UsingFileShare\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" /> | ||
24 | <Content Include="TestData\UsingFileShare\Package.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
25 | <Content Include="TestData\UsingFileShare\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
26 | <Content Include="TestData\CloseApplication\example.txt" CopyToOutputDirectory="PreserveNewest" /> | ||
27 | <Content Include="TestData\CloseApplication\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" /> | ||
28 | <Content Include="TestData\CloseApplication\Package.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
29 | <Content Include="TestData\CloseApplication\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
30 | <Content Include="TestData\InternetShortcut\Package.ico" CopyToOutputDirectory="PreserveNewest" /> | ||
31 | <Content Include="TestData\InternetShortcut\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" /> | ||
32 | <Content Include="TestData\InternetShortcut\Package.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
33 | <Content Include="TestData\InternetShortcut\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
34 | <Content Include="TestData\InternetShortcutModule\Package.ico" CopyToOutputDirectory="PreserveNewest" /> | ||
35 | <Content Include="TestData\InternetShortcutModule\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" /> | ||
36 | <Content Include="TestData\InternetShortcutModule\Package.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
37 | <Content Include="TestData\InternetShortcutModule\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
38 | <Content Include="TestData\PermissionEx\example.txt" CopyToOutputDirectory="PreserveNewest" /> | ||
39 | <Content Include="TestData\PermissionEx\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" /> | ||
40 | <Content Include="TestData\PermissionEx\Package.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
41 | <Content Include="TestData\PermissionEx\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
42 | <Content Include="TestData\EventManifest\example.txt" CopyToOutputDirectory="PreserveNewest" /> | ||
43 | <Content Include="TestData\EventManifest\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" /> | ||
44 | <Content Include="TestData\EventManifest\Package.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
45 | <Content Include="TestData\EventManifest\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
46 | <Content Include="TestData\Queries\example.txt" CopyToOutputDirectory="PreserveNewest" /> | ||
47 | <Content Include="TestData\Queries\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" /> | ||
48 | <Content Include="TestData\Queries\Package.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
49 | <Content Include="TestData\Queries\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
50 | </ItemGroup> | 16 | </ItemGroup> |
51 | 17 | ||
52 | <ItemGroup> | 18 | <ItemGroup> |