diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2022-01-21 16:25:38 -0600 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2022-01-21 17:29:12 -0600 |
commit | af019d2b6d7b67df34355c038290d45366001ea9 (patch) | |
tree | 9e839496fc1a496a4b5d7e2fa8aa84b823e861b5 /src | |
parent | 613fe40c487e1cbec118167939c13546a3ce9e80 (diff) | |
download | wix-af019d2b6d7b67df34355c038290d45366001ea9.tar.gz wix-af019d2b6d7b67df34355c038290d45366001ea9.tar.bz2 wix-af019d2b6d7b67df34355c038290d45366001ea9.zip |
Add failing dependency E2E tests.
Diffstat (limited to 'src')
26 files changed, 399 insertions, 11 deletions
diff --git a/src/test/burn/TestData/DependencyTests/BundleKv1/BundleKv1.wixproj b/src/test/burn/TestData/DependencyTests/BundleKv1/BundleKv1.wixproj index f0b03f2d..ff9db038 100644 --- a/src/test/burn/TestData/DependencyTests/BundleKv1/BundleKv1.wixproj +++ b/src/test/burn/TestData/DependencyTests/BundleKv1/BundleKv1.wixproj | |||
@@ -2,7 +2,7 @@ | |||
2 | <Project Sdk="WixToolset.Sdk"> | 2 | <Project Sdk="WixToolset.Sdk"> |
3 | <Import Project="BundleK.props" /> | 3 | <Import Project="BundleK.props" /> |
4 | <ItemGroup> | 4 | <ItemGroup> |
5 | <ProjectReference Include="..\PackageF\PackageF.wixproj" /> | 5 | <ProjectReference Include="..\PackageFv1\PackageFv1.wixproj" /> |
6 | <ProjectReference Include="..\..\TestBA\TestBAWixlib\testbawixlib.wixproj" /> | 6 | <ProjectReference Include="..\..\TestBA\TestBAWixlib\testbawixlib.wixproj" /> |
7 | </ItemGroup> | 7 | </ItemGroup> |
8 | <ItemGroup> | 8 | <ItemGroup> |
diff --git a/src/test/burn/TestData/DependencyTests/BundleKv1/BundleKv1.wxs b/src/test/burn/TestData/DependencyTests/BundleKv1/BundleKv1.wxs index c4a85814..3f6d28b4 100644 --- a/src/test/burn/TestData/DependencyTests/BundleKv1/BundleKv1.wxs +++ b/src/test/burn/TestData/DependencyTests/BundleKv1/BundleKv1.wxs | |||
@@ -4,7 +4,7 @@ | |||
4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | 4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> |
5 | <Fragment> | 5 | <Fragment> |
6 | <PackageGroup Id="BundlePackages"> | 6 | <PackageGroup Id="BundlePackages"> |
7 | <MsiPackage Id="PackageF" SourceFile="$(var.PackageF.TargetPath)" /> | 7 | <MsiPackage Id="PackageF" SourceFile="$(var.PackageFv1.TargetPath)" /> |
8 | </PackageGroup> | 8 | </PackageGroup> |
9 | </Fragment> | 9 | </Fragment> |
10 | </Wix> | 10 | </Wix> |
diff --git a/src/test/burn/TestData/DependencyTests/BundleKv2/BundleKv2.wixproj b/src/test/burn/TestData/DependencyTests/BundleKv2/BundleKv2.wixproj index a00ff3b5..9f55fa9a 100644 --- a/src/test/burn/TestData/DependencyTests/BundleKv2/BundleKv2.wixproj +++ b/src/test/burn/TestData/DependencyTests/BundleKv2/BundleKv2.wixproj | |||
@@ -5,7 +5,7 @@ | |||
5 | <Version>2.0.0.0</Version> | 5 | <Version>2.0.0.0</Version> |
6 | </PropertyGroup> | 6 | </PropertyGroup> |
7 | <ItemGroup> | 7 | <ItemGroup> |
8 | <ProjectReference Include="..\PackageF\PackageF.wixproj" /> | 8 | <ProjectReference Include="..\PackageFv1\PackageFv1.wixproj" /> |
9 | <ProjectReference Include="..\..\TestBA\TestBAWixlib\testbawixlib.wixproj" /> | 9 | <ProjectReference Include="..\..\TestBA\TestBAWixlib\testbawixlib.wixproj" /> |
10 | </ItemGroup> | 10 | </ItemGroup> |
11 | <ItemGroup> | 11 | <ItemGroup> |
diff --git a/src/test/burn/TestData/DependencyTests/BundleKv2/BundleKv2.wxs b/src/test/burn/TestData/DependencyTests/BundleKv2/BundleKv2.wxs index c4a85814..3f6d28b4 100644 --- a/src/test/burn/TestData/DependencyTests/BundleKv2/BundleKv2.wxs +++ b/src/test/burn/TestData/DependencyTests/BundleKv2/BundleKv2.wxs | |||
@@ -4,7 +4,7 @@ | |||
4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | 4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> |
5 | <Fragment> | 5 | <Fragment> |
6 | <PackageGroup Id="BundlePackages"> | 6 | <PackageGroup Id="BundlePackages"> |
7 | <MsiPackage Id="PackageF" SourceFile="$(var.PackageF.TargetPath)" /> | 7 | <MsiPackage Id="PackageF" SourceFile="$(var.PackageFv1.TargetPath)" /> |
8 | </PackageGroup> | 8 | </PackageGroup> |
9 | </Fragment> | 9 | </Fragment> |
10 | </Wix> | 10 | </Wix> |
diff --git a/src/test/burn/TestData/DependencyTests/BundleM/BundleM.wixproj b/src/test/burn/TestData/DependencyTests/BundleM/BundleM.wixproj new file mode 100644 index 00000000..3aee3643 --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/BundleM/BundleM.wixproj | |||
@@ -0,0 +1,20 @@ | |||
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 | <Project Sdk="WixToolset.Sdk"> | ||
3 | <PropertyGroup> | ||
4 | <OutputType>Bundle</OutputType> | ||
5 | <UpgradeCode>{D106D5F7-CA25-4AC4-8EE9-A9CF8C2C7941}</UpgradeCode> | ||
6 | </PropertyGroup> | ||
7 | <ItemGroup> | ||
8 | <Compile Include="..\..\Templates\Bundle.wxs" Link="Bundle.wxs" /> | ||
9 | </ItemGroup> | ||
10 | <ItemGroup> | ||
11 | <ProjectReference Include="..\PackageAv1\PackageAv1.wixproj" /> | ||
12 | <ProjectReference Include="..\PackageFv1\PackageFv1.wixproj" /> | ||
13 | <ProjectReference Include="..\..\TestBA\TestBAWixlib\testbawixlib.wixproj" /> | ||
14 | </ItemGroup> | ||
15 | <ItemGroup> | ||
16 | <PackageReference Include="WixToolset.Bal.wixext" /> | ||
17 | <PackageReference Include="WixToolset.NetFx.wixext" /> | ||
18 | <PackageReference Include="WixToolset.Util.wixext" /> | ||
19 | </ItemGroup> | ||
20 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/BundleM/BundleM.wxs b/src/test/burn/TestData/DependencyTests/BundleM/BundleM.wxs new file mode 100644 index 00000000..c34f190e --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/BundleM/BundleM.wxs | |||
@@ -0,0 +1,10 @@ | |||
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 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util"> | ||
4 | <Fragment> | ||
5 | <PackageGroup Id="BundlePackages"> | ||
6 | <MsiPackage Id="PackageA" SourceFile="$(var.PackageAv1.TargetPath)" /> | ||
7 | <MsiPackage Id="PackageF" SourceFile="$(var.PackageFv1.TargetPath)" /> | ||
8 | </PackageGroup> | ||
9 | </Fragment> | ||
10 | </Wix> | ||
diff --git a/src/test/burn/TestData/DependencyTests/BundleNv1/BundleN.props b/src/test/burn/TestData/DependencyTests/BundleNv1/BundleN.props new file mode 100644 index 00000000..c3e6f9fb --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/BundleNv1/BundleN.props | |||
@@ -0,0 +1,10 @@ | |||
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 | <Project> | ||
3 | <PropertyGroup> | ||
4 | <OutputType>Bundle</OutputType> | ||
5 | <UpgradeCode>{8F2B8413-CBA1-4284-BA4F-0005FE35E7B9}</UpgradeCode> | ||
6 | </PropertyGroup> | ||
7 | <ItemGroup> | ||
8 | <Compile Include="..\..\Templates\Bundle.wxs" Link="Bundle.wxs" /> | ||
9 | </ItemGroup> | ||
10 | </Project> | ||
diff --git a/src/test/burn/TestData/DependencyTests/BundleNv1/BundleNv1.wixproj b/src/test/burn/TestData/DependencyTests/BundleNv1/BundleNv1.wixproj new file mode 100644 index 00000000..3bcd8c0c --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/BundleNv1/BundleNv1.wixproj | |||
@@ -0,0 +1,13 @@ | |||
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 | <Project Sdk="WixToolset.Sdk"> | ||
3 | <Import Project="BundleN.props" /> | ||
4 | <ItemGroup> | ||
5 | <ProjectReference Include="..\PackageFv1\PackageFv1.wixproj" /> | ||
6 | <ProjectReference Include="..\PackageGv1\PackageGv1.wixproj" /> | ||
7 | <ProjectReference Include="..\..\TestBA\TestBAWixlib\testbawixlib.wixproj" /> | ||
8 | </ItemGroup> | ||
9 | <ItemGroup> | ||
10 | <PackageReference Include="WixToolset.Bal.wixext" /> | ||
11 | <PackageReference Include="WixToolset.NetFx.wixext" /> | ||
12 | </ItemGroup> | ||
13 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/BundleNv1/BundleNv1.wxs b/src/test/burn/TestData/DependencyTests/BundleNv1/BundleNv1.wxs new file mode 100644 index 00000000..19fd3bf8 --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/BundleNv1/BundleNv1.wxs | |||
@@ -0,0 +1,11 @@ | |||
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 | |||
4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | ||
5 | <Fragment> | ||
6 | <PackageGroup Id="BundlePackages"> | ||
7 | <MsiPackage Id="PackageF" SourceFile="$(var.PackageFv1.TargetPath)" /> | ||
8 | <MsiPackage Id="PackageG" SourceFile="$(var.PackageGv1.TargetPath)" /> | ||
9 | </PackageGroup> | ||
10 | </Fragment> | ||
11 | </Wix> | ||
diff --git a/src/test/burn/TestData/DependencyTests/BundleNv1_0_1/BundleNv1_0_1.wixproj b/src/test/burn/TestData/DependencyTests/BundleNv1_0_1/BundleNv1_0_1.wixproj new file mode 100644 index 00000000..68a0d0d3 --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/BundleNv1_0_1/BundleNv1_0_1.wixproj | |||
@@ -0,0 +1,17 @@ | |||
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 | <Project Sdk="WixToolset.Sdk"> | ||
3 | <Import Project="..\BundleNv1\BundleN.props" /> | ||
4 | <PropertyGroup> | ||
5 | <Version>1.0.1.0</Version> | ||
6 | </PropertyGroup> | ||
7 | <ItemGroup> | ||
8 | <ProjectReference Include="..\PackageC\PackageC.wixproj" /> | ||
9 | <ProjectReference Include="..\PackageFv1_0_1\PackageFv1_0_1.wixproj" /> | ||
10 | <ProjectReference Include="..\PackageGv1_0_1\PackageGv1_0_1.wixproj" /> | ||
11 | <ProjectReference Include="..\..\TestBA\TestBAWixlib\testbawixlib.wixproj" /> | ||
12 | </ItemGroup> | ||
13 | <ItemGroup> | ||
14 | <PackageReference Include="WixToolset.Bal.wixext" /> | ||
15 | <PackageReference Include="WixToolset.NetFx.wixext" /> | ||
16 | </ItemGroup> | ||
17 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/BundleNv1_0_1/BundleNv1_0_1.wxs b/src/test/burn/TestData/DependencyTests/BundleNv1_0_1/BundleNv1_0_1.wxs new file mode 100644 index 00000000..b913272f --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/BundleNv1_0_1/BundleNv1_0_1.wxs | |||
@@ -0,0 +1,12 @@ | |||
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 | |||
4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | ||
5 | <Fragment> | ||
6 | <PackageGroup Id="BundlePackages"> | ||
7 | <MsiPackage Id="PackageF" Name="PackageFv1.msi" SourceFile="$(var.PackageFv1_0_1.TargetPath)" /> | ||
8 | <MsiPackage Id="PackageG" Name="PackageGv1.msi" SourceFile="$(var.PackageGv1_0_1.TargetPath)" /> | ||
9 | <MsiPackage Id="PackageC" SourceFile="$(var.PackageC.TargetPath)" /> | ||
10 | </PackageGroup> | ||
11 | </Fragment> | ||
12 | </Wix> | ||
diff --git a/src/test/burn/TestData/DependencyTests/BundleNv2/BundleNv2.wixproj b/src/test/burn/TestData/DependencyTests/BundleNv2/BundleNv2.wixproj new file mode 100644 index 00000000..a66c39f8 --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/BundleNv2/BundleNv2.wixproj | |||
@@ -0,0 +1,17 @@ | |||
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 | <Project Sdk="WixToolset.Sdk"> | ||
3 | <Import Project="..\BundleNv1\BundleN.props" /> | ||
4 | <PropertyGroup> | ||
5 | <Version>2.0.0.0</Version> | ||
6 | </PropertyGroup> | ||
7 | <ItemGroup> | ||
8 | <ProjectReference Include="..\PackageC\PackageC.wixproj" /> | ||
9 | <ProjectReference Include="..\PackageFv2\PackageFv2.wixproj" /> | ||
10 | <ProjectReference Include="..\PackageGv2\PackageGv2.wixproj" /> | ||
11 | <ProjectReference Include="..\..\TestBA\TestBAWixlib\testbawixlib.wixproj" /> | ||
12 | </ItemGroup> | ||
13 | <ItemGroup> | ||
14 | <PackageReference Include="WixToolset.Bal.wixext" /> | ||
15 | <PackageReference Include="WixToolset.NetFx.wixext" /> | ||
16 | </ItemGroup> | ||
17 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/BundleNv2/BundleNv2.wxs b/src/test/burn/TestData/DependencyTests/BundleNv2/BundleNv2.wxs new file mode 100644 index 00000000..5727ca06 --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/BundleNv2/BundleNv2.wxs | |||
@@ -0,0 +1,12 @@ | |||
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 | |||
4 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | ||
5 | <Fragment> | ||
6 | <PackageGroup Id="BundlePackages"> | ||
7 | <MsiPackage Id="PackageF" SourceFile="$(var.PackageFv2.TargetPath)" /> | ||
8 | <MsiPackage Id="PackageG" SourceFile="$(var.PackageGv2.TargetPath)" /> | ||
9 | <MsiPackage Id="PackageC" SourceFile="$(var.PackageC.TargetPath)" /> | ||
10 | </PackageGroup> | ||
11 | </Fragment> | ||
12 | </Wix> | ||
diff --git a/src/test/burn/TestData/DependencyTests/PackageC/PackageC.wixproj b/src/test/burn/TestData/DependencyTests/PackageC/PackageC.wixproj index 4eb2d00b..fde6aa67 100644 --- a/src/test/burn/TestData/DependencyTests/PackageC/PackageC.wixproj +++ b/src/test/burn/TestData/DependencyTests/PackageC/PackageC.wixproj | |||
@@ -7,7 +7,6 @@ | |||
7 | <Compile Include="..\..\Templates\Package.wxs" Link="Package.wxs" /> | 7 | <Compile Include="..\..\Templates\Package.wxs" Link="Package.wxs" /> |
8 | </ItemGroup> | 8 | </ItemGroup> |
9 | <ItemGroup> | 9 | <ItemGroup> |
10 | <PackageReference Include="WixToolset.Dependency.wixext" /> | ||
11 | <PackageReference Include="WixToolset.Util.wixext" /> | 10 | <PackageReference Include="WixToolset.Util.wixext" /> |
12 | </ItemGroup> | 11 | </ItemGroup> |
13 | </Project> \ No newline at end of file | 12 | </Project> \ No newline at end of file |
diff --git a/src/test/burn/TestData/DependencyTests/PackageF/PackageF.wixproj b/src/test/burn/TestData/DependencyTests/PackageFv1/PackageF.props index 25b610ac..4ad7b3ce 100644 --- a/src/test/burn/TestData/DependencyTests/PackageF/PackageF.wixproj +++ b/src/test/burn/TestData/DependencyTests/PackageFv1/PackageF.props | |||
@@ -1,6 +1,7 @@ | |||
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. --> | 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 | <Project Sdk="WixToolset.Sdk"> | 2 | <Project> |
3 | <PropertyGroup> | 3 | <PropertyGroup> |
4 | <PackageName>PackageF</PackageName> | ||
4 | <UpgradeCode>{069AECC6-84DC-4FA4-B506-CD3A9A76F2F4}</UpgradeCode> | 5 | <UpgradeCode>{069AECC6-84DC-4FA4-B506-CD3A9A76F2F4}</UpgradeCode> |
5 | </PropertyGroup> | 6 | </PropertyGroup> |
6 | <ItemGroup> | 7 | <ItemGroup> |
diff --git a/src/test/burn/TestData/DependencyTests/PackageFv1/PackageFv1.props b/src/test/burn/TestData/DependencyTests/PackageFv1/PackageFv1.props new file mode 100644 index 00000000..e273a60e --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/PackageFv1/PackageFv1.props | |||
@@ -0,0 +1,7 @@ | |||
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 | <Project> | ||
3 | <Import Project="PackageF.props" /> | ||
4 | <PropertyGroup> | ||
5 | <ProductCode>{9FD1A4DA-B62B-48F2-851F-7CE01AC10009}</ProductCode> | ||
6 | </PropertyGroup> | ||
7 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/PackageFv1/PackageFv1.wixproj b/src/test/burn/TestData/DependencyTests/PackageFv1/PackageFv1.wixproj new file mode 100644 index 00000000..9a472476 --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/PackageFv1/PackageFv1.wixproj | |||
@@ -0,0 +1,4 @@ | |||
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 | <Project Sdk="WixToolset.Sdk"> | ||
3 | <Import Project="PackageFv1.props" /> | ||
4 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/PackageFv1_0_1/PackageFv1_0_1.wixproj b/src/test/burn/TestData/DependencyTests/PackageFv1_0_1/PackageFv1_0_1.wixproj new file mode 100644 index 00000000..a92682bf --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/PackageFv1_0_1/PackageFv1_0_1.wixproj | |||
@@ -0,0 +1,7 @@ | |||
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 | <Project Sdk="WixToolset.Sdk"> | ||
3 | <Import Project="..\PackageFv1\PackageFv1.props" /> | ||
4 | <PropertyGroup> | ||
5 | <Version>1.0.1.0</Version> | ||
6 | </PropertyGroup> | ||
7 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/PackageFv2/PackageFv2.wixproj b/src/test/burn/TestData/DependencyTests/PackageFv2/PackageFv2.wixproj new file mode 100644 index 00000000..f9ca3be0 --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/PackageFv2/PackageFv2.wixproj | |||
@@ -0,0 +1,7 @@ | |||
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 | <Project Sdk="WixToolset.Sdk"> | ||
3 | <Import Project="..\PackageFv1\PackageF.props" /> | ||
4 | <PropertyGroup> | ||
5 | <Version>2.0.0.0</Version> | ||
6 | </PropertyGroup> | ||
7 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/PackageGv1/PackageG.props b/src/test/burn/TestData/DependencyTests/PackageGv1/PackageG.props new file mode 100644 index 00000000..79b18136 --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/PackageGv1/PackageG.props | |||
@@ -0,0 +1,10 @@ | |||
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 | <Project> | ||
3 | <PropertyGroup> | ||
4 | <PackageName>PackageG</PackageName> | ||
5 | <UpgradeCode>{CFBC162E-8D89-40A7-8E07-7B46E3B27C26}</UpgradeCode> | ||
6 | </PropertyGroup> | ||
7 | <ItemGroup> | ||
8 | <Compile Include="..\..\Templates\Package.wxs" Link="Package.wxs" /> | ||
9 | </ItemGroup> | ||
10 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/PackageGv1/PackageGv1.props b/src/test/burn/TestData/DependencyTests/PackageGv1/PackageGv1.props new file mode 100644 index 00000000..83b5992d --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/PackageGv1/PackageGv1.props | |||
@@ -0,0 +1,7 @@ | |||
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 | <Project> | ||
3 | <Import Project="PackageG.props" /> | ||
4 | <PropertyGroup> | ||
5 | <ProductCode>{56169850-B98A-4D9B-AF5D-8974B6807FE9}</ProductCode> | ||
6 | </PropertyGroup> | ||
7 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/PackageGv1/PackageGv1.wixproj b/src/test/burn/TestData/DependencyTests/PackageGv1/PackageGv1.wixproj new file mode 100644 index 00000000..7d5e9fab --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/PackageGv1/PackageGv1.wixproj | |||
@@ -0,0 +1,4 @@ | |||
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 | <Project Sdk="WixToolset.Sdk"> | ||
3 | <Import Project="PackageGv1.props" /> | ||
4 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/PackageGv1_0_1/PackageGv1_0_1.wixproj b/src/test/burn/TestData/DependencyTests/PackageGv1_0_1/PackageGv1_0_1.wixproj new file mode 100644 index 00000000..3af8e1d0 --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/PackageGv1_0_1/PackageGv1_0_1.wixproj | |||
@@ -0,0 +1,7 @@ | |||
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 | <Project Sdk="WixToolset.Sdk"> | ||
3 | <Import Project="..\PackageGv1\PackageGv1.props" /> | ||
4 | <PropertyGroup> | ||
5 | <Version>1.0.1.0</Version> | ||
6 | </PropertyGroup> | ||
7 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/TestData/DependencyTests/PackageGv2/PackageGv2.wixproj b/src/test/burn/TestData/DependencyTests/PackageGv2/PackageGv2.wixproj new file mode 100644 index 00000000..6ffe6e55 --- /dev/null +++ b/src/test/burn/TestData/DependencyTests/PackageGv2/PackageGv2.wixproj | |||
@@ -0,0 +1,7 @@ | |||
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 | <Project Sdk="WixToolset.Sdk"> | ||
3 | <Import Project="..\PackageGv1\PackageG.props" /> | ||
4 | <PropertyGroup> | ||
5 | <Version>2.0.0.0</Version> | ||
6 | </PropertyGroup> | ||
7 | </Project> \ No newline at end of file | ||
diff --git a/src/test/burn/WixTestTools/BundleVerifier.cs b/src/test/burn/WixTestTools/BundleVerifier.cs index db14c228..e0edb081 100644 --- a/src/test/burn/WixTestTools/BundleVerifier.cs +++ b/src/test/burn/WixTestTools/BundleVerifier.cs | |||
@@ -14,6 +14,7 @@ namespace WixTestTools | |||
14 | 14 | ||
15 | public partial class BundleInstaller | 15 | public partial class BundleInstaller |
16 | { | 16 | { |
17 | public const string DependencyRegistryRoot = "Software\\Classes\\Installer\\Dependencies"; | ||
17 | public const string FULL_BURN_POLICY_REGISTRY_PATH = "SOFTWARE\\WOW6432Node\\Policies\\WiX\\Burn"; | 18 | public const string FULL_BURN_POLICY_REGISTRY_PATH = "SOFTWARE\\WOW6432Node\\Policies\\WiX\\Burn"; |
18 | public const string PACKAGE_CACHE_FOLDER_NAME = "Package Cache"; | 19 | public const string PACKAGE_CACHE_FOLDER_NAME = "Package Cache"; |
19 | 20 | ||
@@ -134,6 +135,22 @@ namespace WixTestTools | |||
134 | Assert.Equal(cached, Directory.Exists(cachePath)); | 135 | Assert.Equal(cached, Directory.Exists(cachePath)); |
135 | } | 136 | } |
136 | 137 | ||
138 | public void VerifyPackageProviderRemoved(string packageId) | ||
139 | { | ||
140 | using var wixOutput = WixOutput.Read(this.BundlePdb); | ||
141 | var intermediate = Intermediate.Load(wixOutput); | ||
142 | var section = intermediate.Sections.Single(); | ||
143 | var packageSymbol = section.Symbols.OfType<WixBundlePackageSymbol>().Single(p => p.Id.Id == packageId); | ||
144 | var providerSymbol = section.Symbols.OfType<WixDependencyProviderSymbol>().Single(p => p.ParentRef == packageId); | ||
145 | var registryRoot = packageSymbol.PerMachine == YesNoDefaultType.Yes ? Registry.LocalMachine : Registry.CurrentUser; | ||
146 | var subkeyPath = Path.Combine(DependencyRegistryRoot, providerSymbol.ProviderKey); | ||
147 | using var registryKey = registryRoot.OpenSubKey(subkeyPath); | ||
148 | if (registryKey != null) | ||
149 | { | ||
150 | WixAssert.StringEqual(null, subkeyPath); | ||
151 | } | ||
152 | } | ||
153 | |||
137 | public void VerifyExeTestRegistryRootDeleted(string name, bool x64 = false) | 154 | public void VerifyExeTestRegistryRootDeleted(string name, bool x64 = false) |
138 | { | 155 | { |
139 | using var testRegistryRoot = this.TestContext.GetTestRegistryRoot(x64, name); | 156 | using var testRegistryRoot = this.TestContext.GetTestRegistryRoot(x64, name); |
diff --git a/src/test/burn/WixToolsetTest.BurnE2E/DependencyTests.cs b/src/test/burn/WixToolsetTest.BurnE2E/DependencyTests.cs index e95e141c..e0b402ff 100644 --- a/src/test/burn/WixToolsetTest.BurnE2E/DependencyTests.cs +++ b/src/test/burn/WixToolsetTest.BurnE2E/DependencyTests.cs | |||
@@ -15,29 +15,29 @@ namespace WixToolsetTest.BurnE2E | |||
15 | [Fact] | 15 | [Fact] |
16 | public void CanKeepSameExactPackageAfterUpgradingBundle() | 16 | public void CanKeepSameExactPackageAfterUpgradingBundle() |
17 | { | 17 | { |
18 | var packageF = this.CreatePackageInstaller("PackageF"); | 18 | var packageFv1 = this.CreatePackageInstaller("PackageFv1"); |
19 | var bundleKv1 = this.CreateBundleInstaller("BundleKv1"); | 19 | var bundleKv1 = this.CreateBundleInstaller("BundleKv1"); |
20 | var bundleKv2 = this.CreateBundleInstaller("BundleKv2"); | 20 | var bundleKv2 = this.CreateBundleInstaller("BundleKv2"); |
21 | 21 | ||
22 | packageF.VerifyInstalled(false); | 22 | packageFv1.VerifyInstalled(false); |
23 | 23 | ||
24 | bundleKv1.Install(); | 24 | bundleKv1.Install(); |
25 | bundleKv1.VerifyRegisteredAndInPackageCache(); | 25 | bundleKv1.VerifyRegisteredAndInPackageCache(); |
26 | 26 | ||
27 | packageF.VerifyInstalled(true); | 27 | packageFv1.VerifyInstalled(true); |
28 | 28 | ||
29 | bundleKv2.Install(); | 29 | bundleKv2.Install(); |
30 | bundleKv2.VerifyRegisteredAndInPackageCache(); | 30 | bundleKv2.VerifyRegisteredAndInPackageCache(); |
31 | bundleKv1.VerifyUnregisteredAndRemovedFromPackageCache(); | 31 | bundleKv1.VerifyUnregisteredAndRemovedFromPackageCache(); |
32 | 32 | ||
33 | packageF.VerifyInstalled(true); | 33 | packageFv1.VerifyInstalled(true); |
34 | 34 | ||
35 | bundleKv2.VerifyPackageIsCached("PackageF"); | 35 | bundleKv2.VerifyPackageIsCached("PackageF"); |
36 | 36 | ||
37 | bundleKv2.Uninstall(); | 37 | bundleKv2.Uninstall(); |
38 | bundleKv2.VerifyUnregisteredAndRemovedFromPackageCache(); | 38 | bundleKv2.VerifyUnregisteredAndRemovedFromPackageCache(); |
39 | 39 | ||
40 | packageF.VerifyInstalled(false); | 40 | packageFv1.VerifyInstalled(false); |
41 | } | 41 | } |
42 | 42 | ||
43 | [Fact (Skip = "https://github.com/wixtoolset/issues/issues/6401")] | 43 | [Fact (Skip = "https://github.com/wixtoolset/issues/issues/6401")] |
@@ -539,6 +539,152 @@ namespace WixToolsetTest.BurnE2E | |||
539 | } | 539 | } |
540 | } | 540 | } |
541 | 541 | ||
542 | [Fact(Skip = "https://github.com/wixtoolset/issues/issues/3421")] | ||
543 | public void DoesntLoseDependenciesOnFailedMajorUpgradeBundleFromMajorUpdateMsi() | ||
544 | { | ||
545 | var packageAv1 = this.CreatePackageInstaller("PackageAv1"); | ||
546 | var packageC = this.CreatePackageInstaller("PackageC"); | ||
547 | var packageFv1 = this.CreatePackageInstaller("PackageFv1"); | ||
548 | var packageFv2 = this.CreatePackageInstaller("PackageFv2"); | ||
549 | var packageGv1 = this.CreatePackageInstaller("PackageGv1"); | ||
550 | var packageGv2 = this.CreatePackageInstaller("PackageGv2"); | ||
551 | var bundleM = this.CreateBundleInstaller("BundleM"); | ||
552 | var bundleNv1 = this.CreateBundleInstaller("BundleNv1"); | ||
553 | var bundleNv2 = this.CreateBundleInstaller("BundleNv2"); | ||
554 | var testBAController = this.CreateTestBAController(); | ||
555 | |||
556 | packageAv1.VerifyInstalled(false); | ||
557 | packageC.VerifyInstalled(false); | ||
558 | packageFv1.VerifyInstalled(false); | ||
559 | packageFv2.VerifyInstalled(false); | ||
560 | packageGv1.VerifyInstalled(false); | ||
561 | packageGv2.VerifyInstalled(false); | ||
562 | |||
563 | bundleM.Install(); | ||
564 | bundleM.VerifyRegisteredAndInPackageCache(); | ||
565 | |||
566 | packageAv1.VerifyInstalled(true); | ||
567 | packageFv1.VerifyInstalled(true); | ||
568 | packageFv2.VerifyInstalled(false); | ||
569 | packageGv1.VerifyInstalled(false); | ||
570 | packageGv2.VerifyInstalled(false); | ||
571 | |||
572 | bundleNv1.Install(); | ||
573 | bundleNv1.VerifyRegisteredAndInPackageCache(); | ||
574 | |||
575 | packageAv1.VerifyInstalled(true); | ||
576 | packageFv1.VerifyInstalled(true); | ||
577 | packageFv2.VerifyInstalled(false); | ||
578 | packageGv1.VerifyInstalled(true); | ||
579 | packageGv2.VerifyInstalled(false); | ||
580 | |||
581 | // Make PackageC fail. | ||
582 | testBAController.SetPackageCancelExecuteAtProgress("PackageC", 10); | ||
583 | |||
584 | bundleNv2.Install((int)MSIExec.MSIExecReturnCode.ERROR_INSTALL_USEREXIT); | ||
585 | bundleNv2.VerifyUnregisteredAndRemovedFromPackageCache(); | ||
586 | bundleNv1.VerifyRegisteredAndInPackageCache(); | ||
587 | |||
588 | packageAv1.VerifyInstalled(true); | ||
589 | packageC.VerifyInstalled(false); | ||
590 | packageFv1.VerifyInstalled(true); | ||
591 | packageFv2.VerifyInstalled(false); | ||
592 | packageGv1.VerifyInstalled(true); | ||
593 | packageGv2.VerifyInstalled(false); | ||
594 | |||
595 | bundleM.Uninstall(); | ||
596 | bundleM.VerifyUnregisteredAndRemovedFromPackageCache(); | ||
597 | |||
598 | packageAv1.VerifyInstalled(false); | ||
599 | packageFv1.VerifyInstalled(true); | ||
600 | packageFv2.VerifyInstalled(false); | ||
601 | packageGv1.VerifyInstalled(true); | ||
602 | packageGv2.VerifyInstalled(false); | ||
603 | |||
604 | bundleNv1.Uninstall(); | ||
605 | bundleNv1.VerifyUnregisteredAndRemovedFromPackageCache(); | ||
606 | |||
607 | packageAv1.VerifyInstalled(false); | ||
608 | packageFv1.VerifyInstalled(false); | ||
609 | packageFv2.VerifyInstalled(false); | ||
610 | packageGv1.VerifyInstalled(false); | ||
611 | packageGv2.VerifyInstalled(false); | ||
612 | } | ||
613 | |||
614 | [Fact(Skip = "https://github.com/wixtoolset/issues/issues/6510")] | ||
615 | public void DoesntLoseDependenciesOnFailedMajorUpgradeBundleFromMinorUpdateMsi() | ||
616 | { | ||
617 | var packageAv1 = this.CreatePackageInstaller("PackageAv1"); | ||
618 | var packageC = this.CreatePackageInstaller("PackageC"); | ||
619 | var packageFv1 = this.CreatePackageInstaller("PackageFv1"); | ||
620 | var packageFv101 = this.CreatePackageInstaller("PackageFv1_0_1"); | ||
621 | var packageGv1 = this.CreatePackageInstaller("PackageGv1"); | ||
622 | var packageGv101 = this.CreatePackageInstaller("PackageGv1_0_1"); | ||
623 | var bundleM = this.CreateBundleInstaller("BundleM"); | ||
624 | var bundleNv1 = this.CreateBundleInstaller("BundleNv1"); | ||
625 | var bundleNv101 = this.CreateBundleInstaller("BundleNv1_0_1"); | ||
626 | var testBAController = this.CreateTestBAController(); | ||
627 | |||
628 | packageAv1.VerifyInstalled(false); | ||
629 | packageC.VerifyInstalled(false); | ||
630 | packageFv1.VerifyInstalledWithVersion(false); | ||
631 | packageFv101.VerifyInstalledWithVersion(false); | ||
632 | packageGv1.VerifyInstalledWithVersion(false); | ||
633 | packageGv101.VerifyInstalledWithVersion(false); | ||
634 | |||
635 | bundleM.Install(); | ||
636 | bundleM.VerifyRegisteredAndInPackageCache(); | ||
637 | |||
638 | packageAv1.VerifyInstalled(true); | ||
639 | packageFv1.VerifyInstalledWithVersion(true); | ||
640 | packageFv101.VerifyInstalledWithVersion(false); | ||
641 | packageGv1.VerifyInstalledWithVersion(false); | ||
642 | packageGv101.VerifyInstalledWithVersion(false); | ||
643 | |||
644 | bundleNv1.Install(); | ||
645 | bundleNv1.VerifyRegisteredAndInPackageCache(); | ||
646 | |||
647 | packageAv1.VerifyInstalled(true); | ||
648 | packageFv1.VerifyInstalledWithVersion(true); | ||
649 | packageFv101.VerifyInstalledWithVersion(false); | ||
650 | packageGv1.VerifyInstalledWithVersion(true); | ||
651 | packageGv101.VerifyInstalledWithVersion(false); | ||
652 | |||
653 | // Make PackageC fail. | ||
654 | testBAController.SetPackageCancelExecuteAtProgress("PackageC", 10); | ||
655 | |||
656 | // Verify https://github.com/wixtoolset/issues/issues/6510 - Dependency provider removed on rollback even though package is not rolled back | ||
657 | bundleNv101.Install((int)MSIExec.MSIExecReturnCode.ERROR_INSTALL_USEREXIT); | ||
658 | bundleNv101.VerifyUnregisteredAndRemovedFromPackageCache(); | ||
659 | bundleNv1.VerifyRegisteredAndInPackageCache(); | ||
660 | |||
661 | // The expected values will change after implementing https://github.com/wixtoolset/issues/issues/6535 and https://github.com/wixtoolset/issues/issues/3421 | ||
662 | packageAv1.VerifyInstalled(true); | ||
663 | packageC.VerifyInstalled(false); | ||
664 | packageFv1.VerifyInstalledWithVersion(false); | ||
665 | packageFv101.VerifyInstalledWithVersion(true); | ||
666 | packageGv1.VerifyInstalledWithVersion(false); | ||
667 | packageGv101.VerifyInstalledWithVersion(true); | ||
668 | |||
669 | bundleM.Uninstall(); | ||
670 | bundleM.VerifyUnregisteredAndRemovedFromPackageCache(); | ||
671 | |||
672 | packageAv1.VerifyInstalled(false); | ||
673 | packageFv1.VerifyInstalledWithVersion(false); | ||
674 | packageFv101.VerifyInstalledWithVersion(true); | ||
675 | packageGv1.VerifyInstalledWithVersion(false); | ||
676 | packageGv101.VerifyInstalledWithVersion(true); | ||
677 | |||
678 | bundleNv1.Uninstall(); | ||
679 | bundleNv1.VerifyUnregisteredAndRemovedFromPackageCache(); | ||
680 | |||
681 | packageAv1.VerifyInstalled(false); | ||
682 | packageFv1.VerifyInstalledWithVersion(false); | ||
683 | packageFv101.VerifyInstalledWithVersion(false); | ||
684 | packageGv1.VerifyInstalledWithVersion(false); | ||
685 | packageGv101.VerifyInstalledWithVersion(false); | ||
686 | } | ||
687 | |||
542 | [Fact] | 688 | [Fact] |
543 | public void DoesntRegisterDependencyOnPackageNotSelectedForInstall() | 689 | public void DoesntRegisterDependencyOnPackageNotSelectedForInstall() |
544 | { | 690 | { |
@@ -711,6 +857,49 @@ namespace WixToolsetTest.BurnE2E | |||
711 | bundleA.VerifyExeTestRegistryRootDeleted(testRegistryValueExe); | 857 | bundleA.VerifyExeTestRegistryRootDeleted(testRegistryValueExe); |
712 | } | 858 | } |
713 | 859 | ||
860 | [Fact(Skip = "https://github.com/wixtoolset/issues/issues/3850")] | ||
861 | public void RemovesDependencyProviderFromUpgradedPackageDuringUninstall() | ||
862 | { | ||
863 | var packageC = this.CreatePackageInstaller("PackageC"); | ||
864 | var packageFv1 = this.CreatePackageInstaller("PackageFv1"); | ||
865 | var packageFv2 = this.CreatePackageInstaller("PackageFv2"); | ||
866 | var packageGv1 = this.CreatePackageInstaller("PackageGv1"); | ||
867 | var packageGv2 = this.CreatePackageInstaller("PackageGv2"); | ||
868 | var bundleNv1 = this.CreateBundleInstaller("BundleNv1"); | ||
869 | var bundleNv2 = this.CreateBundleInstaller("BundleNv2"); | ||
870 | |||
871 | packageC.VerifyInstalled(false); | ||
872 | packageFv1.VerifyInstalled(false); | ||
873 | packageFv2.VerifyInstalled(false); | ||
874 | packageGv1.VerifyInstalled(false); | ||
875 | packageGv2.VerifyInstalled(false); | ||
876 | |||
877 | bundleNv1.Install(); | ||
878 | bundleNv1.VerifyRegisteredAndInPackageCache(); | ||
879 | |||
880 | packageC.VerifyInstalled(false); | ||
881 | packageFv1.VerifyInstalled(true); | ||
882 | packageFv2.VerifyInstalled(false); | ||
883 | packageGv1.VerifyInstalled(true); | ||
884 | packageGv2.VerifyInstalled(false); | ||
885 | |||
886 | // Verify https://github.com/wixtoolset/issues/issues/3850 - Dependency provider not removed on uninstall from upgrade | ||
887 | bundleNv2.Install(); | ||
888 | bundleNv2.VerifyRegisteredAndInPackageCache(); | ||
889 | bundleNv1.VerifyUnregisteredAndRemovedFromPackageCache(); | ||
890 | |||
891 | packageC.VerifyInstalled(true); | ||
892 | packageFv1.VerifyInstalled(false); | ||
893 | packageFv2.VerifyInstalled(true); | ||
894 | packageGv1.VerifyInstalled(false); | ||
895 | packageGv2.VerifyInstalled(true); | ||
896 | |||
897 | bundleNv1.VerifyPackageIsCached("PackageF", false); | ||
898 | bundleNv1.VerifyPackageIsCached("PackageG", false); | ||
899 | bundleNv1.VerifyPackageProviderRemoved("PackageF"); | ||
900 | bundleNv1.VerifyPackageProviderRemoved("PackageG"); | ||
901 | } | ||
902 | |||
714 | [Fact] | 903 | [Fact] |
715 | public void SkipsCrossScopeDependencyRegistration() | 904 | public void SkipsCrossScopeDependencyRegistration() |
716 | { | 905 | { |