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 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);
        }
コード例 #4
0
        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);
        }