예제 #1
0
        public void StartAllMonitors_WithMonitorsAdded_StartsTheMonitors()
        {
            // Arrange
            var monitorCache = new MonitorCache();

            monitorCache.AddMonitor(monitor);
            monitorCache.AddMonitor(monitor2);

            // Act
            monitorCache.StartAllMonitors();

            // Assert
            mockMonitor.Verify(m => m.StartMonitoring(), Times.Once);
            mockMonitor2.Verify(m => m.StartMonitoring(), Times.Once);
        }
예제 #2
0
        public void AddMonitor_BeforeStarted_DoesNothing()
        {
            // Arrange
            var monitorCache = new MonitorCache();

            // Act
            monitorCache.AddMonitor(monitor);

            // Assert
            mockMonitor.Verify(m => m.StartMonitoring(), Times.Never);
        }
예제 #3
0
        public void AddMonitor_AfterStarted_StartsSenderMonitor()
        {
            // Arrange
            var monitorCache = new MonitorCache();

            monitorCache.StartAllMonitors();

            // Act
            monitorCache.AddMonitor(monitor);

            // Assert
            mockMonitor.Verify(m => m.StartMonitoring(), Times.Once);
        }
예제 #4
0
        public void StartAllMonitors_WhenAlreadyStarted_DoesNothing()
        {
            // Arrange
            var monitorCache = new MonitorCache();

            monitorCache.AddMonitor(monitor);
            monitorCache.StartAllMonitors();
            mockMonitor.Invocations.Clear();

            // Act
            monitorCache.StartAllMonitors();

            // Assert
            mockMonitor.Verify(m => m.StartMonitoring(), Times.Never);
        }