public void Should_register_a_new_endpoint() { var context = new MyContext(); EndpointsView auditedMessage = null; Scenario.Define(context) .WithEndpoint <ManagementEndpoint>(c => c.AppConfig(PathToAppConfig)) .WithEndpoint <Sender>(b => b.Given((bus, c) => { c.EndpointNameOfSendingEndpoint = Configure.EndpointName; bus.Send(new MyMessage()); })) .WithEndpoint <Receiver>() .Done(c => { if ( !TryGetSingle("/api/endpoints", out auditedMessage, m => m.Name == c.EndpointNameOfSendingEndpoint)) { return(false); } return(true); }) .Run(TimeSpan.FromSeconds(30)); Assert.AreEqual(context.EndpointNameOfSendingEndpoint, auditedMessage.Name); }
public async Task Should_register_a_new_endpoint() { var context = new MyContext(); EndpointsView endpoint = null; await Define(context) .WithEndpoint <Sender>(b => b.Given((bus, c) => { bus.Send(new MyMessage()); })) .WithEndpoint <Receiver>() .Done(async c => { var result = await TryGetSingle <EndpointsView>("/api/endpoints", m => m.Name == c.EndpointNameOfSendingEndpoint); endpoint = result; if (!result) { return(false); } return(true); }) .Run(TimeSpan.FromSeconds(30)); Assert.AreEqual(context.EndpointNameOfSendingEndpoint, endpoint.Name); }
public async Task Should_be_marked_as_monitored() { EndpointsView endpoint = null; await Define <MyContext>() .WithEndpoint <WithoutHeartbeat>(c => c.When(bus => { var options = new SendOptions(); options.DoNotEnforceBestPractices(); options.SetDestination(Settings.DEFAULT_SERVICE_NAME); return(bus.Send(new NewEndpointDetected { Endpoint = new ServiceControl.Contracts.Operations.EndpointDetails { HostId = Guid.NewGuid(), Host = "myhost", Name = EndpointName }, DetectedAt = DateTime.UtcNow }, options)); })) .Done(async c => { var result = await this.TryGetSingle <EndpointsView>("/api/endpoints", e => e.Name == EndpointName); endpoint = result.Item; return(result.HasResult); }) .Run(); Assert.IsFalse(endpoint.MonitorHeartbeat); Assert.IsFalse(endpoint.Monitored); await Define <MyContext>() .WithEndpoint <WithHeartbeat>() .Done(async c => { var result = await this.TryGetSingle <EndpointsView>("/api/endpoints", e => e.Name == EndpointName && e.IsSendingHeartbeats); endpoint = result.Item; return(result.HasResult); }) .Run(); Assert.IsTrue(endpoint.MonitorHeartbeat, "Should have heartbeat monitoring on"); Assert.IsTrue(endpoint.Monitored, "Should be flagged as monitored"); Assert.IsTrue(endpoint.IsSendingHeartbeats, "Should be emitting heartbeats"); }
public async Task Should_be_monitored_and_active() { EndpointsView endpoint = null; await Define <MyContext>() .WithEndpoint <StartingEndpoint>() .Done(async c => { var result = await this.TryGetSingle <EndpointsView>("/api/endpoints/", e => e.Name == EndpointName && e.Monitored && e.MonitorHeartbeat && e.IsSendingHeartbeats); endpoint = result.Item; return(result.HasResult); }) .Run(); Assert.IsTrue(endpoint.Monitored); Assert.IsTrue(endpoint.IsSendingHeartbeats); }
public async Task Should_register_a_new_endpoint() { var endpointName = Conventions.EndpointNamingConvention(typeof(Sender)); EndpointsView endpoint = null; await Define <MyContext>() .WithEndpoint <Sender>(b => b.When((bus, c) => bus.Send(new MyMessage()))) .WithEndpoint <Receiver>() .Done(async c => { var result = await this.TryGetSingle <EndpointsView>("/api/endpoints", m => m.Name == endpointName); endpoint = result; if (!result) { return(false); } return(true); }) .Run(); Assert.AreEqual(endpointName, endpoint?.Name); }