diff --git a/src/WinSW.Tests/CommandLineTests.cs b/src/WinSW.Tests/CommandLineTests.cs
index 3c711b2..d8eb883 100644
--- a/src/WinSW.Tests/CommandLineTests.cs
+++ b/src/WinSW.Tests/CommandLineTests.cs
@@ -27,7 +27,7 @@ namespace WinSW.Tests
Assert.Equal(ServiceControllerStatus.Stopped, controller.Status);
Assert.Equal(ServiceType.Win32OwnProcess, controller.ServiceType);
-#if NETFRAMEWORK
+#if NET
InterProcessCodeCoverageSession session = null;
try
{
diff --git a/src/WinSW.Tests/NativeMethods.txt b/src/WinSW.Tests/NativeMethods.txt
new file mode 100644
index 0000000..2c9cb77
--- /dev/null
+++ b/src/WinSW.Tests/NativeMethods.txt
@@ -0,0 +1 @@
+Windows.Win32.System.Diagnostics.Debug.DebugCreate
diff --git a/src/WinSW.Tests/Util/InterProcessCodeCoverageSession.cs b/src/WinSW.Tests/Util/InterProcessCodeCoverageSession.cs
index 6ccef86..fb5f515 100644
--- a/src/WinSW.Tests/Util/InterProcessCodeCoverageSession.cs
+++ b/src/WinSW.Tests/Util/InterProcessCodeCoverageSession.cs
@@ -6,6 +6,7 @@ using System.Runtime.InteropServices;
using System.Threading;
using Microsoft.Diagnostics.Runtime;
using Microsoft.Diagnostics.Runtime.Interop;
+using Windows.Win32;
using WinSW.Native;
using Xunit;
@@ -36,20 +37,19 @@ namespace WinSW.Tests.Util
Assert.True(processId >= 0);
var guid = new Guid("27fe5639-8407-4f47-8364-ee118fb08ac8");
- int hr = Native.DebugCreate(guid, out object unknown);
- AssertEx.Succeeded(hr);
+ PInvoke.DebugCreate(guid, out object unknown).ThrowOnFailure();
var client = (IDebugClient)unknown;
this.control = (IDebugControl)unknown;
- hr = client.AttachProcess(0, (uint)processId, DEBUG_ATTACH.DEFAULT);
+ int hr = client.AttachProcess(0, (uint)processId, DEBUG_ATTACH.DEFAULT);
AssertEx.Succeeded(hr);
hr = client.SetEventCallbacks(this);
AssertEx.Succeeded(hr);
var pointer = Marshal.GetIUnknownForObject(client);
- Assert.Equal(1, Marshal.Release(pointer));
+ Assert.Equal(3, Marshal.Release(pointer));
target = DataTarget.CreateFromDbgEng(pointer);
@@ -181,11 +181,5 @@ namespace WinSW.Tests.Util
{
throw new NotImplementedException();
}
-
- private static class Native
- {
- [DllImport("dbgeng.dll")]
- internal static extern int DebugCreate(in Guid InterfaceId, [MarshalAs(UnmanagedType.IUnknown)] out object Interface);
- }
}
}
diff --git a/src/WinSW.Tests/WinSW.Tests.csproj b/src/WinSW.Tests/WinSW.Tests.csproj
index 6288ec4..1b5b35c 100644
--- a/src/WinSW.Tests/WinSW.Tests.csproj
+++ b/src/WinSW.Tests/WinSW.Tests.csproj
@@ -13,6 +13,10 @@
+
+ all
+ runtime; build; native; contentfiles; analyzers
+
runtime; build; native; contentfiles; analyzers; buildtransitive