From 297743a19ad69984b84abe3e90c21aea15cb1989 Mon Sep 17 00:00:00 2001 From: Bob Paul Date: Mon, 28 May 2018 02:30:18 -0400 Subject: [PATCH] Fix code for .NET Core 2 so that server has cancellation token, and Stop method waits for shutdown. This resolves issues when using .NET Core 2 and starting/stopping server instances. (#145) --- src/WireMock.Net/Owin/AspNetCoreSelfHost.cs | 2 +- src/WireMock.Net/Server/FluentMockServer.cs | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/WireMock.Net/Owin/AspNetCoreSelfHost.cs b/src/WireMock.Net/Owin/AspNetCoreSelfHost.cs index a651f230..1f395f65 100644 --- a/src/WireMock.Net/Owin/AspNetCoreSelfHost.cs +++ b/src/WireMock.Net/Owin/AspNetCoreSelfHost.cs @@ -110,7 +110,7 @@ namespace WireMock.Owin _host.Run(_cts.Token); #else _logger.Info("WireMock.Net server using netstandard2.0"); - _host.Run(); + _host.RunAsync(_cts.Token).Wait(); #endif } catch (Exception e) diff --git a/src/WireMock.Net/Server/FluentMockServer.cs b/src/WireMock.Net/Server/FluentMockServer.cs index e941dcd9..66036f7c 100644 --- a/src/WireMock.Net/Server/FluentMockServer.cs +++ b/src/WireMock.Net/Server/FluentMockServer.cs @@ -248,7 +248,9 @@ namespace WireMock.Server [PublicAPI] public void Stop() { - _httpServer?.StopAsync(); + var result = _httpServer?.StopAsync(); + if (result != null) + result.Wait(); //wait for stop to actually happen } #endregion