public void Aggregate_NullContributorList_ReturnsExpectedHealth() { var agg = new DefaultHealthAggregator(); var result = agg.Aggregate(null); Assert.NotNull(result); Assert.Equal(HealthStatus.UNKNOWN, result.Status); Assert.NotNull(result.Details); }
public void Aggregate_SingleContributor_ReturnsExpectedHealth() { List <IHealthContributor> contribs = new List <IHealthContributor>() { new UpContributor() }; var agg = new DefaultHealthAggregator(); var result = agg.Aggregate(contribs); Assert.NotNull(result); Assert.Equal(HealthStatus.UP, result.Status); Assert.NotNull(result.Details); }
public void Aggregate_DuplicateContributor_ReturnsExpectedHealth() { var contribs = new List <IHealthContributor>() { new UpContributor(), new UpContributor() }; var agg = new DefaultHealthAggregator(); var result = agg.Aggregate(contribs); Assert.NotNull(result); Assert.Equal(HealthStatus.UP, result.Status); Assert.Contains("Up-1", result.Details.Keys); }
public void Aggregate_MultipleContributor_OrderDoesntMatter_ReturnsExpectedHealth() { List <IHealthContributor> contribs = new List <IHealthContributor>() { new UpContributor(), new OutOfSserviceContributor(), new UnknownContributor() }; var agg = new DefaultHealthAggregator(); var result = agg.Aggregate(contribs); Assert.NotNull(result); Assert.Equal(HealthStatus.OUT_OF_SERVICE, result.Status); Assert.NotNull(result.Details); }
public void AggregatesInParallel() { var t = new Stopwatch(); var contribs = new List <IHealthContributor>() { new UpContributor(500), new UpContributor(500), new UpContributor(500) }; var agg = new DefaultHealthAggregator(); t.Start(); var result = agg.Aggregate(contribs); t.Stop(); Assert.NotNull(result); Assert.Equal(HealthStatus.UP, result.Status); Assert.InRange(t.ElapsedMilliseconds, 450, 1200); }