aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core.TestPackage
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2018-10-03 14:29:38 -0700
committerRob Mensching <rob@robmensching.com>2018-10-03 14:41:49 -0700
commita0d67c99eb5be2ce6e83f9a8a46d52b61d9871dc (patch)
treeadcb4a87903e66eb390d066a0315d309d4da3b58 /src/WixToolset.Core.TestPackage
parent60587a146d228956ec2c750ebe7b3a76a21f8f26 (diff)
downloadwix-a0d67c99eb5be2ce6e83f9a8a46d52b61d9871dc.tar.gz
wix-a0d67c99eb5be2ce6e83f9a8a46d52b61d9871dc.tar.bz2
wix-a0d67c99eb5be2ce6e83f9a8a46d52b61d9871dc.zip
Add WixRunnerResult to improve success assertion
Diffstat (limited to 'src/WixToolset.Core.TestPackage')
-rw-r--r--src/WixToolset.Core.TestPackage/WixRunner.cs7
-rw-r--r--src/WixToolset.Core.TestPackage/WixRunnerResult.cs22
-rw-r--r--src/WixToolset.Core.TestPackage/WixToolset.Core.TestPackage.csproj9
3 files changed, 36 insertions, 2 deletions
diff --git a/src/WixToolset.Core.TestPackage/WixRunner.cs b/src/WixToolset.Core.TestPackage/WixRunner.cs
index ff5c3c41..d7487f6d 100644
--- a/src/WixToolset.Core.TestPackage/WixRunner.cs
+++ b/src/WixToolset.Core.TestPackage/WixRunner.cs
@@ -16,6 +16,13 @@ namespace WixToolset.Core.TestPackage
16 return Execute(args, serviceProvider, out messages); 16 return Execute(args, serviceProvider, out messages);
17 } 17 }
18 18
19 public static WixRunnerResult Execute(string[] args)
20 {
21 var serviceProvider = new WixToolsetServiceProvider();
22 var exitCode = Execute(args, serviceProvider, out var messages);
23 return new WixRunnerResult { ExitCode = exitCode, Messages = messages.ToArray() };
24 }
25
19 public static int Execute(string[] args, IServiceProvider serviceProvider, out List<Message> messages) 26 public static int Execute(string[] args, IServiceProvider serviceProvider, out List<Message> messages)
20 { 27 {
21 var listener = new TestMessageListener(); 28 var listener = new TestMessageListener();
diff --git a/src/WixToolset.Core.TestPackage/WixRunnerResult.cs b/src/WixToolset.Core.TestPackage/WixRunnerResult.cs
new file mode 100644
index 00000000..45e31c2d
--- /dev/null
+++ b/src/WixToolset.Core.TestPackage/WixRunnerResult.cs
@@ -0,0 +1,22 @@
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
3namespace WixToolset.Core.TestPackage
4{
5 using System;
6 using System.Linq;
7 using WixToolset.Data;
8 using Xunit;
9
10 public class WixRunnerResult
11 {
12 public int ExitCode { get; set; }
13
14 public Message[] Messages { get; set; }
15
16 public WixRunnerResult AssertSuccess()
17 {
18 Assert.True(0 == this.ExitCode, $"MSBuild failed unexpectedly. Output:\r\n{String.Join("\r\n", this.Messages.Select(m => m.ToString()).ToArray())}");
19 return this;
20 }
21 }
22}
diff --git a/src/WixToolset.Core.TestPackage/WixToolset.Core.TestPackage.csproj b/src/WixToolset.Core.TestPackage/WixToolset.Core.TestPackage.csproj
index 3632b064..f02cade7 100644
--- a/src/WixToolset.Core.TestPackage/WixToolset.Core.TestPackage.csproj
+++ b/src/WixToolset.Core.TestPackage/WixToolset.Core.TestPackage.csproj
@@ -1,9 +1,9 @@
1<?xml version="1.0" encoding="utf-8"?> 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. --> 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 3
4<Project Sdk="Microsoft.NET.Sdk"> 4<Project Sdk="Microsoft.NET.Sdk">
5 <PropertyGroup> 5 <PropertyGroup>
6 <TargetFramework>netstandard2.0</TargetFramework> 6 <TargetFrameworks>net461;netcoreapp2.1</TargetFrameworks>
7 <Description>Internal WiX Toolset Test Package</Description> 7 <Description>Internal WiX Toolset Test Package</Description>
8 <DebugType>embedded</DebugType> 8 <DebugType>embedded</DebugType>
9 <PublishRepositoryUrl>true</PublishRepositoryUrl> 9 <PublishRepositoryUrl>true</PublishRepositoryUrl>
@@ -37,4 +37,9 @@
37 <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0-beta-63102-01" PrivateAssets="All"/> 37 <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0-beta-63102-01" PrivateAssets="All"/>
38 <PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="All" /> 38 <PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="All" />
39 </ItemGroup> 39 </ItemGroup>
40
41 <ItemGroup>
42 <PackageReference Include="xunit" Version="2.4.0" />
43 </ItemGroup>
44
40</Project> 45</Project>