public void WindowsFormsSynchronizationContext_CreateCopy_Invoke_Success() { var context = new WindowsFormsSynchronizationContext(); WindowsFormsSynchronizationContext copy = Assert.IsType <WindowsFormsSynchronizationContext>(context.CreateCopy()); Assert.NotSame(context, copy); // Send something. object state = new object(); int callCount = 0; SendOrPostCallback callback = (actualState) => { Assert.Same(state, actualState); callCount++; }; copy.Send(callback, state); Assert.Equal(1, callCount); // Call again. copy.Send(callback, state); Assert.Equal(2, callCount); }