public static void RunTest()
{
CompressedStack compressedStack = CompressedStack.Capture();
Assert.Throws<NullReferenceException>(() => CompressedStack.Run(compressedStack, null, null));
var obj = new object();
Thread mainThread = Thread.CurrentThread;
bool callbackRan = false;
CompressedStack.Run(
compressedStack,
state =>
{
Assert.Same(obj, state);
Assert.Same(mainThread, Thread.CurrentThread);
callbackRan = true;
},
obj);
Assert.True(callbackRan);
}