Beispiel #1
0
 public async Task TestIsRunning()
 {
     IProcess hangingProcess = new Yams.Process.Process(_hangingExePath, "");
     Assert.IsFalse(hangingProcess.IsRunning);
     await hangingProcess.Start();
     Assert.IsTrue(hangingProcess.IsRunning);
     await hangingProcess.Kill();
     Assert.IsTrue(await ProcessUtils.SpinWaitForExit(hangingProcess, 5));
     Assert.IsFalse(hangingProcess.IsRunning);
 }
Beispiel #2
0
        public async Task TestThatProcessCannotBeStartedMoreThanOnce()
        {
            IProcess hangingProcess = new Yams.Process.Process(_fixture.HangingProcessIdentity, _fixture.HangingExePath, false, new Os.System());
            await hangingProcess.Start(string.Empty);

            Assert.True(hangingProcess.IsRunning);

            await Assert.ThrowsAnyAsync <Exception>(async() => await hangingProcess.Start(string.Empty));

            await hangingProcess.Kill();

            await hangingProcess.ReleaseResources();
        }
Beispiel #3
0
        public async Task TestIsRunning()
        {
            IProcess hangingProcess = new Yams.Process.Process(_fixture.HangingProcessIdentity, _fixture.HangingExePath, false, new Os.System());

            Assert.False(hangingProcess.IsRunning);
            await hangingProcess.Start(string.Empty);

            Assert.True(hangingProcess.IsRunning);
            await hangingProcess.Kill();

            Assert.True(await ProcessUtils.SpinWaitForExit(hangingProcess, 5));
            Assert.False(hangingProcess.IsRunning);
        }
Beispiel #4
0
        public async Task TestIsRunning()
        {
            IProcess hangingProcess = new Yams.Process.Process(_hangingExePath, "");

            Assert.IsFalse(hangingProcess.IsRunning);
            await hangingProcess.Start();

            Assert.IsTrue(hangingProcess.IsRunning);
            await hangingProcess.Kill();

            Assert.IsTrue(await ProcessUtils.SpinWaitForExit(hangingProcess, 5));
            Assert.IsFalse(hangingProcess.IsRunning);
        }
Beispiel #5
0
        public async Task TestThatProcessCannotBeStartedMoreThanOnce()
        {
            IProcess hangingProcess = new Yams.Process.Process(_hangingExePath, "", false);
            await hangingProcess.Start();

            Assert.True(hangingProcess.IsRunning);

            await Assert.ThrowsAnyAsync <Exception>(async() => await hangingProcess.Start());

            await hangingProcess.Kill();

            await hangingProcess.ReleaseResources();
        }
Beispiel #6
0
        public async Task TestReleaseResources()
        {
            IProcess hangingProcess = new Yams.Process.Process(_fixture.HangingProcessIdentity, _fixture.HangingExePath, false);
            await hangingProcess.ReleaseResources(); // should do nothing

            await hangingProcess.Start(string.Empty);

            Assert.True(hangingProcess.IsRunning);

            await Assert.ThrowsAnyAsync <Exception>(async() => await hangingProcess.ReleaseResources());

            await hangingProcess.Kill();

            await hangingProcess.ReleaseResources();
        }
Beispiel #7
0
 public async Task TestThatProcessCannotBeStartedMoreThanOnce()
 {
     IProcess hangingProcess = new Yams.Process.Process(_hangingExePath, "");
     await hangingProcess.Start();
     Assert.IsTrue(hangingProcess.IsRunning);
     try
     {
         await hangingProcess.Start();
         Assert.Fail("An exception should have been thrown because of the attempt of starting a process that is already running");
     }
     catch (Exception)
     {
         // ignored
     }
     await hangingProcess.Kill();
     await hangingProcess.ReleaseResources();
 }
Beispiel #8
0
        public async Task TestThatProcessCannotBeStartedMoreThanOnce()
        {
            IProcess hangingProcess = new Yams.Process.Process(_hangingExePath, "");
            await hangingProcess.Start();

            Assert.IsTrue(hangingProcess.IsRunning);
            try
            {
                await hangingProcess.Start();

                Assert.Fail("An exception should have been thrown because of the attempt of starting a process that is already running");
            }
            catch (Exception)
            {
                // ignored
            }
            await hangingProcess.Kill();

            await hangingProcess.ReleaseResources();
        }
Beispiel #9
0
        public async Task TestReleaseResources()
        {
            IProcess hangingProcess = new Yams.Process.Process(_hangingExePath, "");
            await hangingProcess.ReleaseResources(); // should do nothing

            await hangingProcess.Start();

            Assert.IsTrue(hangingProcess.IsRunning);

            try
            {
                await hangingProcess.ReleaseResources();

                Assert.Fail("An exception should have been thrown because ReleaseResources was called before stopping the process");
            }
            catch (Exception)
            {
                // ignored
            }

            await hangingProcess.Kill();

            await hangingProcess.ReleaseResources();
        }
Beispiel #10
0
        public async Task TestReleaseResources()
        {
            IProcess hangingProcess = new Yams.Process.Process(_hangingExePath, "");
            await hangingProcess.ReleaseResources(); // should do nothing
            await hangingProcess.Start();
            Assert.IsTrue(hangingProcess.IsRunning);

            try
            {
                await hangingProcess.ReleaseResources();
                Assert.Fail("An exception should have been thrown because ReleaseResources was called before stopping the process");
            }
            catch (Exception)
            {
                // ignored
            }

            await hangingProcess.Kill();
            await hangingProcess.ReleaseResources();
        }