SEBWIN-679: Extended unit tests for core library and attempted to fix open windows test for external application.
This commit is contained in:
parent
37e3950a6f
commit
817f598d8a
4 changed files with 39 additions and 3 deletions
|
@ -10,6 +10,7 @@ using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
|
using System.Threading.Tasks;
|
||||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||||
using Moq;
|
using Moq;
|
||||||
using SafeExamBrowser.Core.Contracts.Resources.Icons;
|
using SafeExamBrowser.Core.Contracts.Resources.Icons;
|
||||||
|
@ -51,7 +52,7 @@ namespace SafeExamBrowser.Applications.UnitTests
|
||||||
[TestMethod]
|
[TestMethod]
|
||||||
public void GetWindows_MustCorrectlyReturnOpenWindows()
|
public void GetWindows_MustCorrectlyReturnOpenWindows()
|
||||||
{
|
{
|
||||||
var openWindows = new List<IntPtr> { new IntPtr(123), new IntPtr(234), new IntPtr(456), new IntPtr(345), new IntPtr(567), new IntPtr(789), };
|
var openWindows = new List<IntPtr> { new IntPtr(123), new IntPtr(234), new IntPtr(456), new IntPtr(345), new IntPtr(567), new IntPtr(789) };
|
||||||
var process1 = new Mock<IProcess>();
|
var process1 = new Mock<IProcess>();
|
||||||
var process2 = new Mock<IProcess>();
|
var process2 = new Mock<IProcess>();
|
||||||
var sync = new AutoResetEvent(false);
|
var sync = new AutoResetEvent(false);
|
||||||
|
@ -84,8 +85,9 @@ namespace SafeExamBrowser.Applications.UnitTests
|
||||||
Assert.IsTrue(windows.Any(w => w.Handle == new IntPtr(567)));
|
Assert.IsTrue(windows.Any(w => w.Handle == new IntPtr(567)));
|
||||||
|
|
||||||
nativeMethods.Setup(n => n.GetOpenWindows()).Returns(openWindows.Skip(2));
|
nativeMethods.Setup(n => n.GetOpenWindows()).Returns(openWindows.Skip(2));
|
||||||
process2.Raise(p => p.Terminated += null, default(int));
|
Task.Run(() => process2.Raise(p => p.Terminated += null, default(int)));
|
||||||
|
|
||||||
|
sync.WaitOne();
|
||||||
sync.WaitOne();
|
sync.WaitOne();
|
||||||
|
|
||||||
windows = sut.GetWindows();
|
windows = sut.GetWindows();
|
||||||
|
|
|
@ -10,8 +10,8 @@ using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||||
using Moq;
|
using Moq;
|
||||||
using SafeExamBrowser.Communication.Contracts;
|
using SafeExamBrowser.Communication.Contracts;
|
||||||
using SafeExamBrowser.Core.Contracts.OperationModel;
|
using SafeExamBrowser.Core.Contracts.OperationModel;
|
||||||
using SafeExamBrowser.Logging.Contracts;
|
|
||||||
using SafeExamBrowser.Core.Operations;
|
using SafeExamBrowser.Core.Operations;
|
||||||
|
using SafeExamBrowser.Logging.Contracts;
|
||||||
|
|
||||||
namespace SafeExamBrowser.Core.UnitTests.Operations
|
namespace SafeExamBrowser.Core.UnitTests.Operations
|
||||||
{
|
{
|
||||||
|
@ -83,5 +83,19 @@ namespace SafeExamBrowser.Core.UnitTests.Operations
|
||||||
hostMock.Verify(h => h.Stop(), Times.Once);
|
hostMock.Verify(h => h.Stop(), Times.Once);
|
||||||
hostMock.Verify(h => h.Start(), Times.Never);
|
hostMock.Verify(h => h.Start(), Times.Never);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[TestMethod]
|
||||||
|
public void MustFireStatusChangedEvent()
|
||||||
|
{
|
||||||
|
var fired = 0;
|
||||||
|
|
||||||
|
sut.StatusChanged += (_) => fired++;
|
||||||
|
|
||||||
|
sut.Perform();
|
||||||
|
sut.Repeat();
|
||||||
|
sut.Revert();
|
||||||
|
|
||||||
|
Assert.AreEqual(3, fired);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,5 +64,16 @@ namespace SafeExamBrowser.Core.UnitTests.Operations
|
||||||
Assert.AreEqual(OperationResult.Success, repeat);
|
Assert.AreEqual(OperationResult.Success, repeat);
|
||||||
Assert.AreEqual(OperationResult.Success, revert);
|
Assert.AreEqual(OperationResult.Success, revert);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[TestMethod]
|
||||||
|
public void MustNotFireEvents()
|
||||||
|
{
|
||||||
|
var sut = new DelegateOperation(default, default, default);
|
||||||
|
|
||||||
|
sut.ActionRequired += (_) => Assert.Fail();
|
||||||
|
sut.StatusChanged += (_) => Assert.Fail();
|
||||||
|
|
||||||
|
sut.Perform();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,5 +48,14 @@ namespace SafeExamBrowser.Core.UnitTests.Operations
|
||||||
sut.Revert();
|
sut.Revert();
|
||||||
text.VerifyNoOtherCalls();
|
text.VerifyNoOtherCalls();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[TestMethod]
|
||||||
|
public void MustNotFireEvents()
|
||||||
|
{
|
||||||
|
sut.ActionRequired += (_) => Assert.Fail();
|
||||||
|
sut.StatusChanged += (_) => Assert.Fail();
|
||||||
|
|
||||||
|
sut.Perform();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue