Example #1
0
        public async Task When_endpoint_removed_should_stay_removed()
        {
            var monitor = new EndpointInstanceMonitoring(new FakeDomainEvents());

            var monitoredEndpoint = new EndpointInstanceId("MonitoredEndpoint", "HostName", Guid.NewGuid());
            var lastHeartbeat     = DateTime.UtcNow;

            monitor.RecordHeartbeat(monitoredEndpoint, lastHeartbeat);
            await monitor.CheckEndpoints(lastHeartbeat);

            Assert.IsTrue(monitor.HasEndpoint(monitoredEndpoint.UniqueId), "Monitored Endpoint should be recorded");

            monitor.RemoveEndpoint(monitoredEndpoint.UniqueId);

            Assert.IsFalse(monitor.HasEndpoint(monitoredEndpoint.UniqueId), "Monitored Endpoint should be removed");

            await monitor.CheckEndpoints(lastHeartbeat);

            Assert.IsFalse(monitor.HasEndpoint(monitoredEndpoint.UniqueId), "Monitored Endpoint should not be added back");
        }
 public DetectNewEndpointsFromImportsEnricher(EndpointInstanceMonitoring monitoring)
 {
     this.monitoring = monitoring;
 }
 public RegisterNewEndpointHandler(EndpointInstanceMonitoring endpointInstanceMonitoring)
 {
     this.endpointInstanceMonitoring = endpointInstanceMonitoring;
 }
 public RegisterEndpointStartupHandler(EndpointInstanceMonitoring monitoring)
 {
     this.monitoring = monitoring;
 }
 public NewEndpointDetectedHandler(EndpointInstanceMonitoring endpointInstanceMonitoring)
 {
     this.endpointInstanceMonitoring = endpointInstanceMonitoring;
 }