aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core.TestPackage/WixRunner.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Core.TestPackage/WixRunner.cs')
-rw-r--r--src/WixToolset.Core.TestPackage/WixRunner.cs11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/WixToolset.Core.TestPackage/WixRunner.cs b/src/WixToolset.Core.TestPackage/WixRunner.cs
index 082e9e10..679956bd 100644
--- a/src/WixToolset.Core.TestPackage/WixRunner.cs
+++ b/src/WixToolset.Core.TestPackage/WixRunner.cs
@@ -4,6 +4,8 @@ namespace WixToolset.Core.TestPackage
4{ 4{
5 using System; 5 using System;
6 using System.Collections.Generic; 6 using System.Collections.Generic;
7 using System.Threading;
8 using System.Threading.Tasks;
7 using WixToolset.Data; 9 using WixToolset.Data;
8 using WixToolset.Extensibility.Data; 10 using WixToolset.Extensibility.Data;
9 using WixToolset.Extensibility.Services; 11 using WixToolset.Extensibility.Services;
@@ -13,17 +15,18 @@ namespace WixToolset.Core.TestPackage
13 public static int Execute(string[] args, out List<Message> messages) 15 public static int Execute(string[] args, out List<Message> messages)
14 { 16 {
15 var serviceProvider = WixToolsetServiceProviderFactory.CreateServiceProvider(); 17 var serviceProvider = WixToolsetServiceProviderFactory.CreateServiceProvider();
16 return Execute(args, serviceProvider, out messages); 18 var task = Execute(args, serviceProvider, out messages);
19 return task.Result;
17 } 20 }
18 21
19 public static WixRunnerResult Execute(params string[] args) 22 public static WixRunnerResult Execute(params string[] args)
20 { 23 {
21 var serviceProvider = WixToolsetServiceProviderFactory.CreateServiceProvider(); 24 var serviceProvider = WixToolsetServiceProviderFactory.CreateServiceProvider();
22 var exitCode = Execute(args, serviceProvider, out var messages); 25 var exitCode = Execute(args, serviceProvider, out var messages);
23 return new WixRunnerResult { ExitCode = exitCode, Messages = messages.ToArray() }; 26 return new WixRunnerResult { ExitCode = exitCode.Result, Messages = messages.ToArray() };
24 } 27 }
25 28
26 public static int Execute(string[] args, IWixToolsetServiceProvider serviceProvider, out List<Message> messages) 29 public static Task<int> Execute(string[] args, IWixToolsetServiceProvider serviceProvider, out List<Message> messages)
27 { 30 {
28 var listener = new TestMessageListener(); 31 var listener = new TestMessageListener();
29 32
@@ -39,7 +42,7 @@ namespace WixToolset.Core.TestPackage
39 commandLine.ExtensionManager = CreateExtensionManagerWithStandardBackends(serviceProvider, arguments.Extensions); 42 commandLine.ExtensionManager = CreateExtensionManagerWithStandardBackends(serviceProvider, arguments.Extensions);
40 commandLine.Arguments = arguments; 43 commandLine.Arguments = arguments;
41 var command = commandLine.ParseStandardCommandLine(); 44 var command = commandLine.ParseStandardCommandLine();
42 return command?.Execute() ?? 1; 45 return command?.ExecuteAsync(CancellationToken.None) ?? Task.FromResult(1);
43 } 46 }
44 47
45 private static IExtensionManager CreateExtensionManagerWithStandardBackends(IWixToolsetServiceProvider serviceProvider, string[] extensions) 48 private static IExtensionManager CreateExtensionManagerWithStandardBackends(IWixToolsetServiceProvider serviceProvider, string[] extensions)