public void RunspaceIdleTimeIsIsValidWhenLastScriptIsNull() { // Arrange var runspaceClientMock = new Mock <IRunspace>(); runspaceClientMock.Setup(c => c.GetLastScript()).Returns(() => null); var runspaceClientFactoryMock = new Mock <IRunspaceClientFactory>(); runspaceClientFactoryMock.Setup(cf => cf.Create(It.IsAny <IPEndPoint>())).Returns(runspaceClientMock.Object); var actievIdleProvider = new ActiveIdleInfoProvider( new Mock <IRunspaceInfo>().Object, runspaceClientFactoryMock.Object); var testStats = new RunspaceStats("", false, new Mock <IRunspaceSessionInfoProvider>().Object, actievIdleProvider); // Act Thread.Sleep(new TimeSpan(0, 0, 2)); testStats.Refresh(); // Assert Assert.AreEqual(2, testStats.IdleTimeSeconds); Assert.AreEqual(0, testStats.ActiveTimeSeconds); }
public void RunspaceActiveTimeIsZeroWhenLastScriptIsNotRunning() { // Arrange var lastScriptResultMock = new Mock <IScriptExecutionResult>(); lastScriptResultMock.Setup(r => r.StarTime).Returns(DateTime.Now - TimeSpan.FromSeconds(30)); lastScriptResultMock.Setup(r => r.EndTime).Returns(DateTime.Now + TimeSpan.FromSeconds(10)); lastScriptResultMock.Setup(r => r.State).Returns(ScriptState.Success); var runspaceClientMock = new Mock <IRunspace>(); runspaceClientMock.Setup(c => c.GetLastScript()).Returns(lastScriptResultMock.Object); var runspaceClientFactoryMock = new Mock <IRunspaceClientFactory>(); runspaceClientFactoryMock.Setup(cf => cf.Create(It.IsAny <IPEndPoint>())).Returns(runspaceClientMock.Object); var actievIdleProvider = new ActiveIdleInfoProvider( new Mock <IRunspaceInfo>().Object, runspaceClientFactoryMock.Object); var testStats = new RunspaceStats("", false, new Mock <IRunspaceSessionInfoProvider>().Object, actievIdleProvider); // Act testStats.Refresh(); // Assert Assert.AreEqual(0, testStats.ActiveTimeSeconds); }
public void RunspaceIsAcriveWhenLastScriptEndDateIsNull() { // Arrange var lastScriptResultMock = new Mock <IScriptExecutionResult>(); lastScriptResultMock.Setup(r => r.StarTime).Returns(DateTime.Now - TimeSpan.FromSeconds(30)); lastScriptResultMock.Setup(r => r.EndTime).Returns(() => null); lastScriptResultMock.Setup(r => r.State).Returns(ScriptState.Running); var runspaceClientMock = new Mock <IRunspace>(); runspaceClientMock.Setup(c => c.GetLastScript()).Returns(lastScriptResultMock.Object); var runspaceClientFactoryMock = new Mock <IRunspaceClientFactory>(); runspaceClientFactoryMock.Setup(cf => cf.Create(It.IsAny <IPEndPoint>())).Returns(runspaceClientMock.Object); var runspaceInfoMock = new Mock <IRunspaceInfo>(); runspaceInfoMock.Setup(r => r.Endpoint).Returns(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 5555)); var actievIdleProvider = new ActiveIdleInfoProvider( runspaceInfoMock.Object, runspaceClientFactoryMock.Object); var testStats = new RunspaceStats("", false, new Mock <IRunspaceSessionInfoProvider>().Object, actievIdleProvider); // Act testStats.Refresh(); // Assert Assert.IsTrue(testStats.IsActive); }
public void RunspaceIsNotAcriveWhenLastScriptEndDateIsLessThanNow() { // Arrange var lastScriptResultMock = new Mock <IScriptExecutionResult>(); lastScriptResultMock.Setup(r => r.StarTime).Returns(DateTime.Now - TimeSpan.FromSeconds(30)); lastScriptResultMock.Setup(r => r.EndTime).Returns(DateTime.Now - TimeSpan.FromSeconds(10)); lastScriptResultMock.Setup(r => r.State).Returns(ScriptState.Canceled); var runspaceClientMock = new Mock <IRunspace>(); runspaceClientMock.Setup(c => c.GetLastScript()).Returns(lastScriptResultMock.Object); var runspaceClientFactoryMock = new Mock <IRunspaceClientFactory>(); runspaceClientFactoryMock.Setup(cf => cf.Create(It.IsAny <IPEndPoint>())).Returns(runspaceClientMock.Object); var actievIdleProvider = new ActiveIdleInfoProvider( new Mock <IRunspaceInfo>().Object, runspaceClientFactoryMock.Object); var testStats = new RunspaceStats("", new Mock <IRunspaceSessionInfoProvider>().Object, actievIdleProvider); // Act testStats.Refresh(); // Assert Assert.IsFalse(testStats.IsActive); }
public void HasActiveSessionIsFalseWhenNoSession() { // Arrange var sessionInfoProviderMock = new Mock <IRunspaceSessionInfoProvider>(); sessionInfoProviderMock.Setup(s => s.SessionId).Returns("invalid"); var testStats = new RunspaceStats( "", sessionInfoProviderMock.Object, new Mock <IActiveIdleInfoProvider>().Object); // Act testStats.Refresh(); // Assert Assert.IsFalse(testStats.HasActiveSession); }
public void HasActiveSessionIsTrueWhenSessionIsActive() { // Arrange var sessionInfoProviderMock = new Mock <IRunspaceSessionInfoProvider>(); sessionInfoProviderMock.Setup(s => s.IsActive).Returns(true); var testStats = new RunspaceStats( "", sessionInfoProviderMock.Object, new Mock <IActiveIdleInfoProvider>().Object); // Act testStats.Refresh(); // Assert Assert.IsTrue(testStats.HasActiveSession); }
public void RunspaceStatsReadsDataFromAllProviders() { // Arrange var sessionInfoProviderMock = new Mock <IRunspaceSessionInfoProvider>(); sessionInfoProviderMock.Setup(s => s.IsActive).Returns(true); var activeIdleInfoProvider = new Mock <IActiveIdleInfoProvider>(); activeIdleInfoProvider.Setup(s => s.IsActive).Returns(true); var testStats = new RunspaceStats( "", sessionInfoProviderMock.Object, activeIdleInfoProvider.Object); // Act testStats.Refresh(); // Assert Assert.IsTrue(testStats.HasActiveSession); Assert.IsTrue(testStats.IsActive); }