public void ApplicationProcessStop()
{
string path = ApplicationUtils.CreateValidExampleApplication();
ManualResetEvent handle = new ManualResetEvent(false);
try
{
using (ApplicationProcess process = new ApplicationProcess(Logger, path, Path.GetFullPath("Collar.exe")))
{
process.Exited += (object sender, EventArgs e) =>
{
handle.Set();
};
Assert.IsTrue(process.Start());
process.Stop(false);
WaitHandle.WaitAll(new WaitHandle[] { handle });
}
}
finally
{
handle.Close();
}
}