@joebigelow / wix / commits / 8c76578c

Migrate integration tests from Tools repo

Rob Mensching committed Jun 7, 2020 at 07:58 UTC 8c76578ce852a04f7ebeb8631f67913daa3ab307
15 files changed +843
src/test/WixToolsetTest.Converters/ConverterIntegrationFixture.cs new
+172
@@ -0,0 +1,172 @@
1 +// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2 +
3 +namespace WixToolsetTest.Converters
4 +{
5 + using System;
6 + using System.IO;
7 + using System.Linq;
8 + using WixBuildTools.TestSupport;
9 + using WixToolset.Converters;
10 + using WixToolset.Core;
11 + using WixToolset.Core.TestPackage;
12 + using WixToolsetTest.Converters.Mocks;
13 + using Xunit;
14 +
15 + public class ConverterIntegrationFixture
16 + {
17 + [Fact]
18 + public void CanConvertPermissionExFile()
19 + {
20 + const string beforeFileName = "v3.wxs";
21 + const string afterFileName = "v4_expected.wxs";
22 + var folder = TestData.Get(@"TestData\PermissionEx");
23 +
24 + using (var fs = new DisposableFileSystem())
25 + {
26 + var baseFolder = fs.GetFolder(true);
27 + var targetFile = Path.Combine(baseFolder, beforeFileName);
28 + File.Copy(Path.Combine(folder, beforeFileName), Path.Combine(baseFolder, beforeFileName));
29 +
30 + var messaging = new MockMessaging();
31 + var converter = new Wix3Converter(messaging, 4);
32 + var errors = converter.ConvertFile(targetFile, true);
33 +
34 + Assert.Equal(8, errors);
35 +
36 + var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n");
37 + var actual = File.ReadAllText(targetFile).Replace("\r\n", "\n");
38 + Assert.Equal(expected, actual);
39 +
40 + EnsureFixed(targetFile);
41 + }
42 + }
43 +
44 + [Fact]
45 + public void CanConvertSingleFile()
46 + {
47 + const string beforeFileName = "SingleFile.wxs";
48 + const string afterFileName = "ConvertedSingleFile.wxs";
49 + var folder = TestData.Get(@"TestData\SingleFile");
50 +
51 + using (var fs = new DisposableFileSystem())
52 + {
53 + var baseFolder = fs.GetFolder(true);
54 + var targetFile = Path.Combine(baseFolder, beforeFileName);
55 + File.Copy(Path.Combine(folder, beforeFileName), Path.Combine(baseFolder, beforeFileName));
56 +
57 + var messaging = new MockMessaging();
58 + var converter = new Wix3Converter(messaging, 4);
59 + var errors = converter.ConvertFile(targetFile, true);
60 +
61 + Assert.Equal(5, errors);
62 +
63 + var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n");
64 + var actual = File.ReadAllText(targetFile).Replace("\r\n", "\n");
65 + Assert.Equal(expected, actual);
66 +
67 + EnsureFixed(targetFile);
68 + }
69 + }
70 +
71 + [Fact]
72 + public void RetainsPreprocessorInstructions()
73 + {
74 + const string beforeFileName = "Preprocessor.wxs";
75 + const string afterFileName = "ConvertedPreprocessor.wxs";
76 + var folder = TestData.Get(@"TestData\Preprocessor");
77 +
78 + using (var fs = new DisposableFileSystem())
79 + {
80 + var baseFolder = fs.GetFolder(true);
81 + var targetFile = Path.Combine(baseFolder, beforeFileName);
82 + File.Copy(Path.Combine(folder, beforeFileName), Path.Combine(baseFolder, beforeFileName));
83 +
84 + var settingsFile = Path.Combine(folder, "wixcop.settings.xml");
85 +
86 + var result = RunConversion(targetFile, settingsFile: settingsFile);
87 + Assert.Equal(2, result.ExitCode);
88 +
89 + var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n");
90 + var actual = File.ReadAllText(targetFile).Replace("\r\n", "\n");
91 + Assert.Equal(expected, actual);
92 +
93 + EnsureFixed(targetFile);
94 + }
95 + }
96 +
97 + [Fact]
98 + public void CanConvertQtExec()
99 + {
100 + const string beforeFileName = "v3.wxs";
101 + const string afterFileName = "v4_expected.wxs";
102 + var folder = TestData.Get(@"TestData\QtExec");
103 +
104 + using (var fs = new DisposableFileSystem())
105 + {
106 + var baseFolder = fs.GetFolder(true);
107 + var targetFile = Path.Combine(baseFolder, beforeFileName);
108 + File.Copy(Path.Combine(folder, beforeFileName), Path.Combine(baseFolder, beforeFileName));
109 +
110 + var result = RunConversion(targetFile);
111 + Assert.Equal(2, result.ExitCode);
112 +
113 + var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n");
114 + var actual = File.ReadAllText(targetFile).Replace("\r\n", "\n");
115 + Assert.Equal(expected, actual);
116 +
117 + EnsureFixed(targetFile);
118 + }
119 + }
120 +
121 + [Fact]
122 + public void DetectUnconvertableQtExecCmdTimeout()
123 + {
124 + const string beforeFileName = "v3.wxs";
125 + const string afterFileName = "v4_expected.wxs";
126 + var folder = TestData.Get(@"TestData\QtExec.bad");
127 +
128 + using (var fs = new DisposableFileSystem())
129 + {
130 + var baseFolder = fs.GetFolder(true);
131 + var targetFile = Path.Combine(baseFolder, beforeFileName);
132 + File.Copy(Path.Combine(folder, beforeFileName), Path.Combine(baseFolder, beforeFileName));
133 +
134 + var result = RunConversion(targetFile);
135 +
136 + Assert.Equal(2, result.ExitCode);
137 + Assert.Single(result.Messages.Where(message => message.ToString().EndsWith("(QtExecCmdTimeoutAmbiguous)")));
138 +
139 + var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n");
140 + var actual = File.ReadAllText(targetFile).Replace("\r\n", "\n");
141 + Assert.Equal(expected, actual);
142 +
143 + // still fails because QtExecCmdTimeoutAmbiguous is unfixable
144 + var result2 = RunConversion(targetFile);
145 + Assert.Equal(2, result2.ExitCode);
146 + }
147 + }
148 +
149 + private static WixRunnerResult RunConversion(string targetFile, bool fixErrors = true, string settingsFile = null)
150 + {
151 + var serviceProvider = WixToolsetServiceProviderFactory.CreateServiceProvider().AddConverter();
152 +
153 + var exitCode = WixRunner.Execute(new[]
154 + {
155 + "convert",
156 + fixErrors ? "-f" : null,
157 + String.IsNullOrEmpty(settingsFile) ? null : "-set1" + settingsFile,
158 + targetFile
159 + }, serviceProvider, out var messages);
160 +
161 + return new WixRunnerResult { ExitCode = exitCode, Messages = messages.ToArray() };
162 + }
163 +
164 + private static void EnsureFixed(string targetFile)
165 + {
166 + var messaging2 = new MockMessaging();
167 + var converter2 = new Wix3Converter(messaging2, 4);
168 + var errors2 = converter2.ConvertFile(targetFile, true);
169 + Assert.Equal(0, errors2);
170 + }
171 + }
172 +}
src/test/WixToolsetTest.Converters/Mocks/MockCoreServiceProvider.cs new
+51
@@ -0,0 +1,51 @@
1 +// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2 +
3 +namespace WixToolsetTest.Converters.Mocks
4 +{
5 + using System;
6 + using System.Collections.Generic;
7 + using WixToolset.Extensibility.Services;
8 +
9 + public class MockCoreServiceProvider : IWixToolsetCoreServiceProvider
10 + {
11 + public Dictionary<Type, Func<IWixToolsetCoreServiceProvider, Dictionary<Type, object>, object>> CreationFunctions { get; } = new Dictionary<Type, Func<IWixToolsetCoreServiceProvider, Dictionary<Type, object>, object>>();
12 +
13 + public Dictionary<Type, object> Singletons { get; } = new Dictionary<Type, object>()
14 + {
15 + { typeof(IMessaging), new MockMessaging() }
16 + };
17 +
18 + public void AddService(Type serviceType, Func<IWixToolsetCoreServiceProvider, Dictionary<Type, object>, object> creationFunction) => this.CreationFunctions.Add(serviceType, creationFunction);
19 +
20 + public void AddService<T>(Func<IWixToolsetCoreServiceProvider, Dictionary<Type, object>, T> creationFunction) where T : class => this.AddService(typeof(T), creationFunction);
21 +
22 + public T GetService<T>() where T : class => this.TryGetService(typeof(T), out var obj) ? (T)obj : null;
23 +
24 + public object GetService(Type serviceType) => this.TryGetService(serviceType, out var service) ? service : null;
25 +
26 + public bool TryGetService(Type serviceType, out object service)
27 + {
28 + if (!this.Singletons.TryGetValue(serviceType, out service))
29 + {
30 + if (this.CreationFunctions.TryGetValue(serviceType, out var creationFunction))
31 + {
32 + service = creationFunction(this, this.Singletons);
33 + }
34 + }
35 +
36 + return service != null;
37 + }
38 +
39 + public bool TryGetService<T>(out T service) where T : class
40 + {
41 + service = null;
42 +
43 + if (this.TryGetService(typeof(T), out var obj))
44 + {
45 + service = (T)obj;
46 + }
47 +
48 + return service != null;
49 + }
50 + }
51 +}
\ No newline at end of file
src/test/WixToolsetTest.Converters/Mocks/MockMessaging.cs new
+40
@@ -0,0 +1,40 @@
1 +// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2 +
3 +namespace WixToolsetTest.Converters.Mocks
4 +{
5 + using System;
6 + using System.Collections.Generic;
7 + using System.Text;
8 + using WixToolset.Data;
9 + using WixToolset.Extensibility;
10 + using WixToolset.Extensibility.Services;
11 +
12 + public class MockMessaging : IMessaging
13 + {
14 + public List<Message> Messages { get; } = new List<Message>();
15 +
16 + public bool EncounteredError { get; private set; }
17 +
18 + public int LastErrorNumber { get; }
19 +
20 + public bool ShowVerboseMessages { get; set; }
21 +
22 + public bool SuppressAllWarnings { get; set; }
23 +
24 + public bool WarningsAsError { get; set; }
25 +
26 + public void ElevateWarningMessage(int warningNumber) => throw new NotImplementedException();
27 +
28 + public void SetListener(IMessageListener listener) => throw new NotImplementedException();
29 +
30 + public void SuppressWarningMessage(int warningNumber) => throw new NotImplementedException();
31 +
32 + public void Write(Message message)
33 + {
34 + this.Messages.Add(message);
35 + this.EncounteredError |= message.Level == MessageLevel.Error;
36 + }
37 +
38 + public void Write(string message, bool verbose = false) => throw new NotImplementedException();
39 + }
40 +}
src/test/WixToolsetTest.Converters/TestData/PermissionEx/v3.wxs new
+27
@@ -0,0 +1,27 @@
1 +<?xml version="1.0" encoding="utf-8"?>
2 +<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
3 + <Fragment>
4 + <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
5 + <Component>
6 + <File Source="example.txt">
7 + <util:PermissionEx User="Everyone" GenericAll="yes" />
8 + </File>
9 + <CreateFolder>
10 + <util:PermissionEx User="Everyone" GenericAll="yes" />
11 + </CreateFolder>
12 + <ServiceInstall Name="testsvc" Type="ownProcess" Start="disabled" ErrorControl="normal">
13 + <util:PermissionEx User="Everyone" GenericAll="yes" />
14 + </ServiceInstall>
15 + <Registry Action="createKey" Root="HKLM" Key="TestKey">
16 + <util:PermissionEx User="Everyone" GenericAll="yes" />
17 + </Registry>
18 + <RegistryKey Id="ExampleRegistryKey" ForceCreateOnInstall="yes" Root="HKLM" Key="TestRegistryKey">
19 + <util:PermissionEx User="Everyone" GenericAll="yes" />
20 + </RegistryKey>
21 + <RegistryValue Root="HKLM" Key="TestRegistryValueKey" Value="abc">
22 + <util:PermissionEx User="Everyone" GenericAll="yes" />
23 + </RegistryValue>
24 + </Component>
25 + </ComponentGroup>
26 + </Fragment>
27 +</Wix>
src/test/WixToolsetTest.Converters/TestData/PermissionEx/v4_expected.wxs new
+27
@@ -0,0 +1,27 @@
1 +<?xml version="1.0" encoding="utf-8"?>
2 +<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
3 + <Fragment>
4 + <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
5 + <Component>
6 + <File Id="example.txt" Source="example.txt">
7 + <util:PermissionEx User="Everyone" GenericAll="yes" Inheritable="no" />
8 + </File>
9 + <CreateFolder>
10 + <util:PermissionEx User="Everyone" GenericAll="yes" />
11 + </CreateFolder>
12 + <ServiceInstall Name="testsvc" Type="ownProcess" Start="disabled" ErrorControl="normal">
13 + <util:PermissionEx User="Everyone" GenericAll="yes" Inheritable="no" />
14 + </ServiceInstall>
15 + <Registry Action="createKey" Root="HKLM" Key="TestKey">
16 + <util:PermissionEx User="Everyone" GenericAll="yes" Inheritable="no" />
17 + </Registry>
18 + <RegistryKey Id="ExampleRegistryKey" ForceCreateOnInstall="yes" Root="HKLM" Key="TestRegistryKey">
19 + <util:PermissionEx User="Everyone" GenericAll="yes" Inheritable="no" />
20 + </RegistryKey>
21 + <RegistryValue Root="HKLM" Key="TestRegistryValueKey" Value="abc">
22 + <util:PermissionEx User="Everyone" GenericAll="yes" Inheritable="no" />
23 + </RegistryValue>
24 + </Component>
25 + </ComponentGroup>
26 + </Fragment>
27 +</Wix>
src/test/WixToolsetTest.Converters/TestData/Preprocessor/ConvertedPreprocessor.wxs new
+62
@@ -0,0 +1,62 @@
1 +<?xml version="1.0" encoding="utf-8"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +
6 +<?include WixVer.wxi ?>
7 +
8 +<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:swid="http://wixtoolset.org/schemas/v4/wxs/tag" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
9 + <Product Id="*" Name="!(loc.ShortProduct) v$(var.WixMajorMinor) Core" Language="1033" Manufacturer="!(loc.Company)" Version="$(var.WixMsiProductVersion)" UpgradeCode="3618724B-2523-44F9-A908-866AA619504D">
10 + <Package Compressed="yes" InstallerVersion="200" SummaryCodepage="1252" InstallScope="perMachine" />
11 + <swid:Tag Regid="!(loc.Regid)" InstallDirectory="INSTALLFOLDER" />
12 +
13 + <MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed." />
14 +
15 + <MediaTemplate CabinetTemplate="core{0}.cab" />
16 +
17 + <Feature Id="Feature_WiX" Title="WiX Toolset" Level="1">
18 + <Component Id="Licensing" Directory="INSTALLFOLDER">
19 + <File Id="LICENSE.TXT" Source="LICENSE.TXT" />
20 + </Component>
21 +
22 + <Component Id="ProductRegistration" Directory="INSTALLFOLDER">
23 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
24 + <RegistryValue Name="InstallFolder" Value="[INSTALLFOLDER]" Type="string" />
25 + </RegistryKey>
26 + </Component>
27 +
28 + <Component Id="ProductFamilyRegistration" Directory="INSTALLFOLDER">
29 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajor).x">
30 + <RegistryValue Name="v$(var.WixMajorMinor)" Value="[INSTALLFOLDER]" Type="string" />
31 + </RegistryKey>
32 + </Component>
33 +
34 + <Component Id="ProductInformation" Directory="BinFolder">
35 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
36 + <RegistryValue Name="InstallRoot" Value="[BinFolder]" Type="string" />
37 + <RegistryValue Name="ProductVersion" Value="[ProductVersion]" Type="string" />
38 + </RegistryKey>
39 +
40 + <RemoveFolder Id="CleanupShortcutFolder" Directory="ShortcutFolder" On="uninstall" />
41 + </Component>
42 +
43 + <Component Directory="BinFolder">
44 + <File Id="wixtoolset.org.ico" Source="common\wixtoolset.org.ico">
45 + <?include ComRegistration.wxi ?>
46 + </File>
47 + <util:InternetShortcut Id="wixtoolset.org" Directory="ShortcutFolder" Name="WiX Home Page" Target="http://wixtoolset.org/" IconFile="file://[#wixtoolset.org.ico]" />
48 + </Component>
49 +
50 + <ComponentGroupRef Id="ToolsetComponents" />
51 + <ComponentGroupRef Id="ExtensionComponents" />
52 + <ComponentGroupRef Id="LuxComponents" />
53 + <ComponentGroupRef Id="DocComponents" />
54 + </Feature>
55 +
56 + <FeatureRef Id="Feature_MSBuild" />
57 + <FeatureRef Id="Feature_Intellisense2010" />
58 + <FeatureRef Id="Feature_Intellisense2012" />
59 + <FeatureRef Id="Feature_Intellisense2013" />
60 + <FeatureRef Id="Feature_Intellisense2015" />
61 + </Product>
62 +</Wix>
src/test/WixToolsetTest.Converters/TestData/Preprocessor/Preprocessor.wxs new
+63
@@ -0,0 +1,63 @@
1 +<?xml version="1.0" encoding="UTF-8"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +
6 +<?include WixVer.wxi ?>
7 +
8 +<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:swid="http://schemas.microsoft.com/wix/TagExtension" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
9 + <Product Id="*" Name="!(loc.ShortProduct) v$(var.WixMajorMinor) Core" Language="1033" Manufacturer="!(loc.Company)"
10 + Version="$(var.WixMsiProductVersion)" UpgradeCode="3618724B-2523-44F9-A908-866AA619504D">
11 + <Package Compressed="yes" InstallerVersion="200" SummaryCodepage="1252" InstallScope="perMachine" />
12 + <swid:Tag Regid="!(loc.Regid)" InstallDirectory="INSTALLFOLDER" />
13 +
14 + <MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed." />
15 +
16 + <MediaTemplate CabinetTemplate="core{0}.cab" />
17 +
18 + <Feature Id="Feature_WiX" Title="WiX Toolset" Level="1">
19 + <Component Id="Licensing" Directory="INSTALLFOLDER">
20 + <File Source="LICENSE.TXT" />
21 + </Component>
22 +
23 + <Component Id="ProductRegistration" Directory="INSTALLFOLDER">
24 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
25 + <RegistryValue Name="InstallFolder" Value="[INSTALLFOLDER]" Type="string" />
26 + </RegistryKey>
27 + </Component>
28 +
29 + <Component Id="ProductFamilyRegistration" Directory="INSTALLFOLDER">
30 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajor).x">
31 + <RegistryValue Name="v$(var.WixMajorMinor)" Value="[INSTALLFOLDER]" Type="string" />
32 + </RegistryKey>
33 + </Component>
34 +
35 + <Component Id="ProductInformation" Directory="BinFolder">
36 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
37 + <RegistryValue Name="InstallRoot" Value="[BinFolder]" Type="string"/>
38 + <RegistryValue Name="ProductVersion" Value="[ProductVersion]" Type="string" />
39 + </RegistryKey>
40 +
41 + <RemoveFolder Id="CleanupShortcutFolder" Directory="ShortcutFolder" On="uninstall" />
42 + </Component>
43 +
44 + <Component Directory="BinFolder">
45 + <File Source="common\wixtoolset.org.ico">
46 + <?include ComRegistration.wxi ?>
47 + </File>
48 + <util:InternetShortcut Id="wixtoolset.org" Directory="ShortcutFolder" Name="WiX Home Page" Target="http://wixtoolset.org/" IconFile="file://[#wixtoolset.org.ico]" />
49 + </Component>
50 +
51 + <ComponentGroupRef Id="ToolsetComponents" />
52 + <ComponentGroupRef Id="ExtensionComponents" />
53 + <ComponentGroupRef Id="LuxComponents" />
54 + <ComponentGroupRef Id="DocComponents" />
55 + </Feature>
56 +
57 + <FeatureRef Id="Feature_MSBuild" />
58 + <FeatureRef Id="Feature_Intellisense2010" />
59 + <FeatureRef Id="Feature_Intellisense2012" />
60 + <FeatureRef Id="Feature_Intellisense2013" />
61 + <FeatureRef Id="Feature_Intellisense2015" />
62 + </Product>
63 +</Wix>
src/test/WixToolsetTest.Converters/TestData/Preprocessor/wixcop.settings.xml new
+9
@@ -0,0 +1,9 @@
1 +<?xml version="1.0"?>
2 +<Settings>
3 + <IgnoreErrors>
4 + <Test Id="WhitespacePrecedingNodeWrong"/>
5 + <Test Id="WhitespacePrecedingEndElementWrong"/>
6 + </IgnoreErrors>
7 + <ErrorsAsWarnings/>
8 + <ExemptFiles/>
9 +</Settings>
\ No newline at end of file
src/test/WixToolsetTest.Converters/TestData/QtExec.bad/v3.wxs new
+65
@@ -0,0 +1,65 @@
1 +<?xml version="1.0" encoding="UTF-8"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +
6 +<?include WixVer.wxi ?>
7 +
8 +<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:swid="http://schemas.microsoft.com/wix/TagExtension" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
9 + <Product Id="*" Name="!(loc.ShortProduct) v$(var.WixMajorMinor) Core" Language="1033" Manufacturer="!(loc.Company)"
10 + Version="$(var.WixMsiProductVersion)" UpgradeCode="3618724B-2523-44F9-A908-866AA619504D">
11 + <Package Compressed="yes" InstallerVersion="200" SummaryCodepage="1252" InstallScope="perMachine" />
12 + <swid:Tag Regid="!(loc.Regid)" InstallDirectory="INSTALLFOLDER" />
13 +
14 + <MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed." />
15 +
16 + <MediaTemplate CabinetTemplate="core{0}.cab" />
17 +
18 + <Property Id="QtExecCmdTimeout" Value="600000" />
19 + <CustomAction Id="InstallVSTemplateCommand" Property="QtExecCmdLine" Value="&quot;[VSENVPRODUCT80]\devenv.exe&quot; /setup" />
20 + <CustomAction Id="InstallVSTemplate" BinaryKey="WixCA" DllEntry="CAQuietExec" Return="asyncWait" />
21 +
22 + <Feature Id="Feature_WiX" Title="WiX Toolset" Level="1">
23 + <Component Id="Licensing" Directory="INSTALLFOLDER">
24 + <File Source="LICENSE.TXT" />
25 + </Component>
26 +
27 + <Component Id="ProductRegistration" Directory="INSTALLFOLDER">
28 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
29 + <RegistryValue Name="InstallFolder" Value="[INSTALLFOLDER]" Type="string" />
30 + </RegistryKey>
31 + </Component>
32 +
33 + <Component Id="ProductFamilyRegistration" Directory="INSTALLFOLDER">
34 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajor).x">
35 + <RegistryValue Name="v$(var.WixMajorMinor)" Value="[INSTALLFOLDER]" Type="string" />
36 + </RegistryKey>
37 + </Component>
38 +
39 + <Component Id="ProductInformation" Directory="BinFolder">
40 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
41 + <RegistryValue Name="InstallRoot" Value="[BinFolder]" Type="string"/>
42 + <RegistryValue Name="ProductVersion" Value="[ProductVersion]" Type="string" />
43 + </RegistryKey>
44 +
45 + <RemoveFolder Id="CleanupShortcutFolder" Directory="ShortcutFolder" On="uninstall" />
46 + </Component>
47 +
48 + <Component Directory="BinFolder">
49 + <File Source="common\wixtoolset.org.ico" />
50 + <util:InternetShortcut Id="wixtoolset.org" Directory="ShortcutFolder" Name="WiX Home Page" Target="http://wixtoolset.org/" IconFile="file://[#wixtoolset.org.ico]" />
51 + </Component>
52 +
53 + <ComponentGroupRef Id="ToolsetComponents" />
54 + <ComponentGroupRef Id="ExtensionComponents" />
55 + <ComponentGroupRef Id="LuxComponents" />
56 + <ComponentGroupRef Id="DocComponents" />
57 + </Feature>
58 +
59 + <FeatureRef Id="Feature_MSBuild" />
60 + <FeatureRef Id="Feature_Intellisense2010" />
61 + <FeatureRef Id="Feature_Intellisense2012" />
62 + <FeatureRef Id="Feature_Intellisense2013" />
63 + <FeatureRef Id="Feature_Intellisense2015" />
64 + </Product>
65 +</Wix>
src/test/WixToolsetTest.Converters/TestData/QtExec.bad/v4_expected.wxs new
+64
@@ -0,0 +1,64 @@
1 +<?xml version="1.0" encoding="utf-8"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +
6 +<?include WixVer.wxi ?>
7 +
8 +<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:swid="http://wixtoolset.org/schemas/v4/wxs/tag" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
9 + <Product Id="*" Name="!(loc.ShortProduct) v$(var.WixMajorMinor) Core" Language="1033" Manufacturer="!(loc.Company)" Version="$(var.WixMsiProductVersion)" UpgradeCode="3618724B-2523-44F9-A908-866AA619504D">
10 + <Package Compressed="yes" InstallerVersion="200" SummaryCodepage="1252" InstallScope="perMachine" />
11 + <swid:Tag Regid="!(loc.Regid)" InstallDirectory="INSTALLFOLDER" />
12 +
13 + <MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed." />
14 +
15 + <MediaTemplate CabinetTemplate="core{0}.cab" />
16 +
17 + <Property Id="QtExecCmdTimeout" Value="600000" />
18 + <CustomAction Id="InstallVSTemplateCommand" Property="WixQuietExecCmdLine" Value="&quot;[VSENVPRODUCT80]\devenv.exe&quot; /setup" />
19 + <CustomAction Id="InstallVSTemplate" BinaryKey="Wix4UtilCA_X86" DllEntry="WixQuietExec" Return="asyncWait" />
20 +
21 + <Feature Id="Feature_WiX" Title="WiX Toolset" Level="1">
22 + <Component Id="Licensing" Directory="INSTALLFOLDER">
23 + <File Id="LICENSE.TXT" Source="LICENSE.TXT" />
24 + </Component>
25 +
26 + <Component Id="ProductRegistration" Directory="INSTALLFOLDER">
27 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
28 + <RegistryValue Name="InstallFolder" Value="[INSTALLFOLDER]" Type="string" />
29 + </RegistryKey>
30 + </Component>
31 +
32 + <Component Id="ProductFamilyRegistration" Directory="INSTALLFOLDER">
33 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajor).x">
34 + <RegistryValue Name="v$(var.WixMajorMinor)" Value="[INSTALLFOLDER]" Type="string" />
35 + </RegistryKey>
36 + </Component>
37 +
38 + <Component Id="ProductInformation" Directory="BinFolder">
39 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
40 + <RegistryValue Name="InstallRoot" Value="[BinFolder]" Type="string" />
41 + <RegistryValue Name="ProductVersion" Value="[ProductVersion]" Type="string" />
42 + </RegistryKey>
43 +
44 + <RemoveFolder Id="CleanupShortcutFolder" Directory="ShortcutFolder" On="uninstall" />
45 + </Component>
46 +
47 + <Component Directory="BinFolder">
48 + <File Id="wixtoolset.org.ico" Source="common\wixtoolset.org.ico" />
49 + <util:InternetShortcut Id="wixtoolset.org" Directory="ShortcutFolder" Name="WiX Home Page" Target="http://wixtoolset.org/" IconFile="file://[#wixtoolset.org.ico]" />
50 + </Component>
51 +
52 + <ComponentGroupRef Id="ToolsetComponents" />
53 + <ComponentGroupRef Id="ExtensionComponents" />
54 + <ComponentGroupRef Id="LuxComponents" />
55 + <ComponentGroupRef Id="DocComponents" />
56 + </Feature>
57 +
58 + <FeatureRef Id="Feature_MSBuild" />
59 + <FeatureRef Id="Feature_Intellisense2010" />
60 + <FeatureRef Id="Feature_Intellisense2012" />
61 + <FeatureRef Id="Feature_Intellisense2013" />
62 + <FeatureRef Id="Feature_Intellisense2015" />
63 + </Product>
64 +</Wix>
src/test/WixToolsetTest.Converters/TestData/QtExec/v3.wxs new
+64
@@ -0,0 +1,64 @@
1 +<?xml version="1.0" encoding="UTF-8"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +
6 +<?include WixVer.wxi ?>
7 +
8 +<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:swid="http://schemas.microsoft.com/wix/TagExtension" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
9 + <Product Id="*" Name="!(loc.ShortProduct) v$(var.WixMajorMinor) Core" Language="1033" Manufacturer="!(loc.Company)"
10 + Version="$(var.WixMsiProductVersion)" UpgradeCode="3618724B-2523-44F9-A908-866AA619504D">
11 + <Package Compressed="yes" InstallerVersion="200" SummaryCodepage="1252" InstallScope="perMachine" />
12 + <swid:Tag Regid="!(loc.Regid)" InstallDirectory="INSTALLFOLDER" />
13 +
14 + <MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed." />
15 +
16 + <MediaTemplate CabinetTemplate="core{0}.cab" />
17 +
18 + <CustomAction Id="InstallVSTemplateCommand" Property="QtExecCmdLine" Value="&quot;[VSENVPRODUCT80]\devenv.exe&quot; /setup" />
19 + <CustomAction Id="InstallVSTemplate" BinaryKey="WixCA" DllEntry="CAQuietExec" Return="asyncWait" />
20 +
21 + <Feature Id="Feature_WiX" Title="WiX Toolset" Level="1">
22 + <Component Id="Licensing" Directory="INSTALLFOLDER">
23 + <File Source="LICENSE.TXT" />
24 + </Component>
25 +
26 + <Component Id="ProductRegistration" Directory="INSTALLFOLDER">
27 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
28 + <RegistryValue Name="InstallFolder" Value="[INSTALLFOLDER]" Type="string" />
29 + </RegistryKey>
30 + </Component>
31 +
32 + <Component Id="ProductFamilyRegistration" Directory="INSTALLFOLDER">
33 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajor).x">
34 + <RegistryValue Name="v$(var.WixMajorMinor)" Value="[INSTALLFOLDER]" Type="string" />
35 + </RegistryKey>
36 + </Component>
37 +
38 + <Component Id="ProductInformation" Directory="BinFolder">
39 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
40 + <RegistryValue Name="InstallRoot" Value="[BinFolder]" Type="string"/>
41 + <RegistryValue Name="ProductVersion" Value="[ProductVersion]" Type="string" />
42 + </RegistryKey>
43 +
44 + <RemoveFolder Id="CleanupShortcutFolder" Directory="ShortcutFolder" On="uninstall" />
45 + </Component>
46 +
47 + <Component Directory="BinFolder">
48 + <File Source="common\wixtoolset.org.ico" />
49 + <util:InternetShortcut Id="wixtoolset.org" Directory="ShortcutFolder" Name="WiX Home Page" Target="http://wixtoolset.org/" IconFile="file://[#wixtoolset.org.ico]" />
50 + </Component>
51 +
52 + <ComponentGroupRef Id="ToolsetComponents" />
53 + <ComponentGroupRef Id="ExtensionComponents" />
54 + <ComponentGroupRef Id="LuxComponents" />
55 + <ComponentGroupRef Id="DocComponents" />
56 + </Feature>
57 +
58 + <FeatureRef Id="Feature_MSBuild" />
59 + <FeatureRef Id="Feature_Intellisense2010" />
60 + <FeatureRef Id="Feature_Intellisense2012" />
61 + <FeatureRef Id="Feature_Intellisense2013" />
62 + <FeatureRef Id="Feature_Intellisense2015" />
63 + </Product>
64 +</Wix>
src/test/WixToolsetTest.Converters/TestData/QtExec/v4_expected.wxs new
+63
@@ -0,0 +1,63 @@
1 +<?xml version="1.0" encoding="utf-8"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +
6 +<?include WixVer.wxi ?>
7 +
8 +<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:swid="http://wixtoolset.org/schemas/v4/wxs/tag" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
9 + <Product Id="*" Name="!(loc.ShortProduct) v$(var.WixMajorMinor) Core" Language="1033" Manufacturer="!(loc.Company)" Version="$(var.WixMsiProductVersion)" UpgradeCode="3618724B-2523-44F9-A908-866AA619504D">
10 + <Package Compressed="yes" InstallerVersion="200" SummaryCodepage="1252" InstallScope="perMachine" />
11 + <swid:Tag Regid="!(loc.Regid)" InstallDirectory="INSTALLFOLDER" />
12 +
13 + <MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed." />
14 +
15 + <MediaTemplate CabinetTemplate="core{0}.cab" />
16 +
17 + <CustomAction Id="InstallVSTemplateCommand" Property="WixQuietExecCmdLine" Value="&quot;[VSENVPRODUCT80]\devenv.exe&quot; /setup" />
18 + <CustomAction Id="InstallVSTemplate" BinaryKey="Wix4UtilCA_X86" DllEntry="WixQuietExec" Return="asyncWait" />
19 +
20 + <Feature Id="Feature_WiX" Title="WiX Toolset" Level="1">
21 + <Component Id="Licensing" Directory="INSTALLFOLDER">
22 + <File Id="LICENSE.TXT" Source="LICENSE.TXT" />
23 + </Component>
24 +
25 + <Component Id="ProductRegistration" Directory="INSTALLFOLDER">
26 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
27 + <RegistryValue Name="InstallFolder" Value="[INSTALLFOLDER]" Type="string" />
28 + </RegistryKey>
29 + </Component>
30 +
31 + <Component Id="ProductFamilyRegistration" Directory="INSTALLFOLDER">
32 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajor).x">
33 + <RegistryValue Name="v$(var.WixMajorMinor)" Value="[INSTALLFOLDER]" Type="string" />
34 + </RegistryKey>
35 + </Component>
36 +
37 + <Component Id="ProductInformation" Directory="BinFolder">
38 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
39 + <RegistryValue Name="InstallRoot" Value="[BinFolder]" Type="string" />
40 + <RegistryValue Name="ProductVersion" Value="[ProductVersion]" Type="string" />
41 + </RegistryKey>
42 +
43 + <RemoveFolder Id="CleanupShortcutFolder" Directory="ShortcutFolder" On="uninstall" />
44 + </Component>
45 +
46 + <Component Directory="BinFolder">
47 + <File Id="wixtoolset.org.ico" Source="common\wixtoolset.org.ico" />
48 + <util:InternetShortcut Id="wixtoolset.org" Directory="ShortcutFolder" Name="WiX Home Page" Target="http://wixtoolset.org/" IconFile="file://[#wixtoolset.org.ico]" />
49 + </Component>
50 +
51 + <ComponentGroupRef Id="ToolsetComponents" />
52 + <ComponentGroupRef Id="ExtensionComponents" />
53 + <ComponentGroupRef Id="LuxComponents" />
54 + <ComponentGroupRef Id="DocComponents" />
55 + </Feature>
56 +
57 + <FeatureRef Id="Feature_MSBuild" />
58 + <FeatureRef Id="Feature_Intellisense2010" />
59 + <FeatureRef Id="Feature_Intellisense2012" />
60 + <FeatureRef Id="Feature_Intellisense2013" />
61 + <FeatureRef Id="Feature_Intellisense2015" />
62 + </Product>
63 +</Wix>
src/test/WixToolsetTest.Converters/TestData/SingleFile/ConvertedSingleFile.wxs new
+60
@@ -0,0 +1,60 @@
1 +<?xml version="1.0" encoding="utf-8"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +
6 +<?include WixVer.wxi ?>
7 +
8 +<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:swid="http://wixtoolset.org/schemas/v4/wxs/tag" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
9 + <Product Id="*" Name="!(loc.ShortProduct) v$(var.WixMajorMinor) Core" Language="1033" Manufacturer="!(loc.Company)" Version="$(var.WixMsiProductVersion)" UpgradeCode="3618724B-2523-44F9-A908-866AA619504D">
10 + <Package Compressed="yes" InstallerVersion="200" SummaryCodepage="1252" InstallScope="perMachine" />
11 + <swid:Tag Regid="!(loc.Regid)" InstallDirectory="INSTALLFOLDER" />
12 +
13 + <MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed." />
14 +
15 + <MediaTemplate CabinetTemplate="core{0}.cab" />
16 +
17 + <Feature Id="Feature_WiX" Title="WiX Toolset" Level="1">
18 + <Component Id="Licensing" Directory="INSTALLFOLDER">
19 + <File Id="LICENSE.TXT" Source="LICENSE.TXT" />
20 + </Component>
21 +
22 + <Component Id="ProductRegistration" Directory="INSTALLFOLDER">
23 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
24 + <RegistryValue Name="InstallFolder" Value="[INSTALLFOLDER]" Type="string" />
25 + </RegistryKey>
26 + </Component>
27 +
28 + <Component Id="ProductFamilyRegistration" Directory="INSTALLFOLDER">
29 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajor).x">
30 + <RegistryValue Name="v$(var.WixMajorMinor)" Value="[INSTALLFOLDER]" Type="string" />
31 + </RegistryKey>
32 + </Component>
33 +
34 + <Component Id="ProductInformation" Directory="BinFolder">
35 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
36 + <RegistryValue Name="InstallRoot" Value="[BinFolder]" Type="string" />
37 + <RegistryValue Name="ProductVersion" Value="[ProductVersion]" Type="string" />
38 + </RegistryKey>
39 +
40 + <RemoveFolder Id="CleanupShortcutFolder" Directory="ShortcutFolder" On="uninstall" />
41 + </Component>
42 +
43 + <Component Directory="BinFolder">
44 + <File Id="wixtoolset.org.ico" Source="common\wixtoolset.org.ico" />
45 + <util:InternetShortcut Id="wixtoolset.org" Directory="ShortcutFolder" Name="WiX Home Page" Target="http://wixtoolset.org/" IconFile="file://[#wixtoolset.org.ico]" />
46 + </Component>
47 +
48 + <ComponentGroupRef Id="ToolsetComponents" />
49 + <ComponentGroupRef Id="ExtensionComponents" />
50 + <ComponentGroupRef Id="LuxComponents" />
51 + <ComponentGroupRef Id="DocComponents" />
52 + </Feature>
53 +
54 + <FeatureRef Id="Feature_MSBuild" />
55 + <FeatureRef Id="Feature_Intellisense2010" />
56 + <FeatureRef Id="Feature_Intellisense2012" />
57 + <FeatureRef Id="Feature_Intellisense2013" />
58 + <FeatureRef Id="Feature_Intellisense2015" />
59 + </Product>
60 +</Wix>
src/test/WixToolsetTest.Converters/TestData/SingleFile/SingleFile.wxs new
+61
@@ -0,0 +1,61 @@
1 +<?xml version="1.0" encoding="UTF-8"?>
2 +<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3 +
4 +
5 +
6 +<?include WixVer.wxi ?>
7 +
8 +<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:swid="http://schemas.microsoft.com/wix/TagExtension" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
9 + <Product Id="*" Name="!(loc.ShortProduct) v$(var.WixMajorMinor) Core" Language="1033" Manufacturer="!(loc.Company)"
10 + Version="$(var.WixMsiProductVersion)" UpgradeCode="3618724B-2523-44F9-A908-866AA619504D">
11 + <Package Compressed="yes" InstallerVersion="200" SummaryCodepage="1252" InstallScope="perMachine" />
12 + <swid:Tag Regid="!(loc.Regid)" InstallDirectory="INSTALLFOLDER" />
13 +
14 + <MajorUpgrade DowngradeErrorMessage="A later version of [ProductName] is already installed." />
15 +
16 + <MediaTemplate CabinetTemplate="core{0}.cab" />
17 +
18 + <Feature Id="Feature_WiX" Title="WiX Toolset" Level="1">
19 + <Component Id="Licensing" Directory="INSTALLFOLDER">
20 + <File Source="LICENSE.TXT" />
21 + </Component>
22 +
23 + <Component Id="ProductRegistration" Directory="INSTALLFOLDER">
24 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
25 + <RegistryValue Name="InstallFolder" Value="[INSTALLFOLDER]" Type="string" />
26 + </RegistryKey>
27 + </Component>
28 +
29 + <Component Id="ProductFamilyRegistration" Directory="INSTALLFOLDER">
30 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajor).x">
31 + <RegistryValue Name="v$(var.WixMajorMinor)" Value="[INSTALLFOLDER]" Type="string" />
32 + </RegistryKey>
33 + </Component>
34 +
35 + <Component Id="ProductInformation" Directory="BinFolder">
36 + <RegistryKey Root="HKLM" Key="SOFTWARE\Microsoft\Windows Installer XML\$(var.WixMajorMinor)">
37 + <RegistryValue Name="InstallRoot" Value="[BinFolder]" Type="string"/>
38 + <RegistryValue Name="ProductVersion" Value="[ProductVersion]" Type="string" />
39 + </RegistryKey>
40 +
41 + <RemoveFolder Id="CleanupShortcutFolder" Directory="ShortcutFolder" On="uninstall" />
42 + </Component>
43 +
44 + <Component Directory="BinFolder">
45 + <File Source="common\wixtoolset.org.ico" />
46 + <util:InternetShortcut Id="wixtoolset.org" Directory="ShortcutFolder" Name="WiX Home Page" Target="http://wixtoolset.org/" IconFile="file://[#wixtoolset.org.ico]" />
47 + </Component>
48 +
49 + <ComponentGroupRef Id="ToolsetComponents" />
50 + <ComponentGroupRef Id="ExtensionComponents" />
51 + <ComponentGroupRef Id="LuxComponents" />
52 + <ComponentGroupRef Id="DocComponents" />
53 + </Feature>
54 +
55 + <FeatureRef Id="Feature_MSBuild" />
56 + <FeatureRef Id="Feature_Intellisense2010" />
57 + <FeatureRef Id="Feature_Intellisense2012" />
58 + <FeatureRef Id="Feature_Intellisense2013" />
59 + <FeatureRef Id="Feature_Intellisense2015" />
60 + </Product>
61 +</Wix>
src/test/WixToolsetTest.Converters/WixToolsetTest.Converters.csproj
+15
@@ -11,12 +11,27 @@
11 <NoWarn>NU1701</NoWarn>
12 </PropertyGroup>
13
14 + <ItemGroup>
15 + <Content Include="TestData\PermissionEx\v3.wxs" CopyToOutputDirectory="PreserveNewest" />
16 + <Content Include="TestData\PermissionEx\v4_expected.wxs" CopyToOutputDirectory="PreserveNewest" />
17 + <Content Include="TestData\Preprocessor\ConvertedPreprocessor.wxs" CopyToOutputDirectory="PreserveNewest" />
18 + <Content Include="TestData\Preprocessor\Preprocessor.wxs" CopyToOutputDirectory="PreserveNewest" />
19 + <Content Include="TestData\Preprocessor\wixcop.settings.xml" CopyToOutputDirectory="PreserveNewest" />
20 + <Content Include="TestData\QtExec\v3.wxs" CopyToOutputDirectory="PreserveNewest" />
21 + <Content Include="TestData\QtExec\v4_expected.wxs" CopyToOutputDirectory="PreserveNewest" />
22 + <Content Include="TestData\QtExec.bad\v3.wxs" CopyToOutputDirectory="PreserveNewest" />
23 + <Content Include="TestData\QtExec.bad\v4_expected.wxs" CopyToOutputDirectory="PreserveNewest" />
24 + <Content Include="TestData\SingleFile\ConvertedSingleFile.wxs" CopyToOutputDirectory="PreserveNewest" />
25 + <Content Include="TestData\SingleFile\SingleFile.wxs" CopyToOutputDirectory="PreserveNewest" />
26 + </ItemGroup>
27 +
28 <ItemGroup>
29 <ProjectReference Include="..\..\WixToolset.Converters\WixToolset.Converters.csproj" />
30 </ItemGroup>
31
32 <ItemGroup>
33 <PackageReference Include="WixBuildTools.TestSupport" Version="4.0.*" />
34 + <PackageReference Include="WixToolset.Core.TestPackage" Version="4.0.*" />
35 </ItemGroup>
36
37 <ItemGroup>