From 4362960feec4a770f665419eaebd7b4ed14ecb9e Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Fri, 8 Jan 2021 14:18:26 -0800 Subject: Validate MSU package build Closes wixtoolset/issues#6006 --- .../MsuPackageFixture.cs | 36 ++++++++++++++++++++++ .../TestData/MsuPackage/Bundle.wxs | 11 +++++++ .../TestData/MsuPackage/data/fakeba.dll | 1 + .../TestData/MsuPackage/data/test.msu | 1 + 4 files changed, 49 insertions(+) create mode 100644 src/test/WixToolsetTest.CoreIntegration/MsuPackageFixture.cs create mode 100644 src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/Bundle.wxs create mode 100644 src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/data/fakeba.dll create mode 100644 src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/data/test.msu diff --git a/src/test/WixToolsetTest.CoreIntegration/MsuPackageFixture.cs b/src/test/WixToolsetTest.CoreIntegration/MsuPackageFixture.cs new file mode 100644 index 00000000..475afcf0 --- /dev/null +++ b/src/test/WixToolsetTest.CoreIntegration/MsuPackageFixture.cs @@ -0,0 +1,36 @@ +// 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. + +namespace WixToolsetTest.CoreIntegration +{ + using System.IO; + using WixBuildTools.TestSupport; + using WixToolset.Core.TestPackage; + using Xunit; + + public class MsuPackageFixture + { + [Fact] + public void CanBuildBundleWithMsuPackage() + { + var folder = TestData.Get(@"TestData", "MsuPackage"); + + using (var fs = new DisposableFileSystem()) + { + var baseFolder = fs.GetFolder(); + var intermediateFolder = Path.Combine(baseFolder, "obj"); + + var result = WixRunner.Execute(new[] + { + "build", + Path.Combine(folder, "Bundle.wxs"), + "-bindpath", Path.Combine(folder, "data"), + "-intermediateFolder", intermediateFolder, + "-o", Path.Combine(baseFolder, "bin", "test.exe") + }); + + result.AssertSuccess(); + Assert.True(File.Exists(Path.Combine(baseFolder, "bin", "test.exe"))); + } + } + } +} diff --git a/src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/Bundle.wxs b/src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/Bundle.wxs new file mode 100644 index 00000000..dbca3393 --- /dev/null +++ b/src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/Bundle.wxs @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/data/fakeba.dll b/src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/data/fakeba.dll new file mode 100644 index 00000000..b3cf17d8 --- /dev/null +++ b/src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/data/fakeba.dll @@ -0,0 +1 @@ +This is a fake BA DLL diff --git a/src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/data/test.msu b/src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/data/test.msu new file mode 100644 index 00000000..d63da4be --- /dev/null +++ b/src/test/WixToolsetTest.CoreIntegration/TestData/MsuPackage/data/test.msu @@ -0,0 +1 @@ +This is a fake MSU package -- cgit v1.2.3-55-g6feb