Vanara/UnitTests/PInvoke/Security/AdvApi32/wctTests.cs

26 lines
769 B
C#

using NUnit.Framework;
using System;
using Vanara.InteropServices;
using static Vanara.PInvoke.AdvApi32;
namespace Vanara.PInvoke.Tests
{
[TestFixture()]
public class wctTests
{
[Test]
public void ThreadWaitChainSessionTest()
{
RegisterWaitChainCOMCallback();
using (new ElevPriv("SeDebugPrivilege"))
using (var hWct = OpenThreadWaitChainSession(WaitChainSessionType.WCT_SYNC_OPEN_FLAG))
{
Assert.That(hWct, ResultIs.ValidHandle);
var nodes = new WAITCHAIN_NODE_INFO[WCT_MAX_NODE_COUNT];
uint nodeCnt = (uint)nodes.Length;
Assert.That(GetThreadWaitChain(hWct, default, WaitChainRetrievalOptions.WCTP_GETINFO_ALL_FLAGS, Kernel32.GetCurrentThreadId(),
ref nodeCnt, nodes, out var isCycle), ResultIs.Successful);
}
}
}
}