public void StartConsumeActivity_WhenActivitySourceListener_StartsActivityThroughSource() { using var listener = new TestActivityListener(); var envelope = CreateInboundEnvelope(new MessageHeaderCollection()); Activity activity = ActivitySources.StartConsumeActivity(envelope); listener.Activites.Should().Contain(activity); }
public async Task AbstractHealthCheck_MarksActivityWithHealthCheckFlag() { using TestActivityListener listener = new TestActivityListener(); Activity?activity = null; HealthCheckResult actualResult = await new TestHealthCheck((c, t) => { activity = Activity.Current; return(HealthCheckResult.Healthy()); }).CheckHealthAsync(HealthCheckContextHelper.CreateCheckContext()); Assert.AreEqual(actualResult.Status, HealthStatus.Healthy); NullableAssert.IsNotNull(activity); Assert.IsTrue(activity !.IsHealthCheck(), "Activity should be marked as HealthCheck activity"); activity.AssertResult(ActivityResult.Success); }
public async Task AbstractHealthCheck_WhenExceptionThrown_ReturnsUnhealtyState() { using TestActivityListener listener = new TestActivityListener(); Activity? activity = null; Exception exception = new ArrayTypeMismatchException(); HealthCheckResult actualResult = await new TestHealthCheck((c, t) => { activity = Activity.Current; throw exception; } ).CheckHealthAsync(HealthCheckContextHelper.CreateCheckContext()); Assert.AreEqual(actualResult.Exception, exception); Assert.AreEqual(actualResult.Status, HealthStatus.Unhealthy); CollectionAssert.AreEquivalent(actualResult.Data.ToArray(), TestHealthCheck.TestParameters); NullableAssert.IsNotNull(activity); Assert.IsTrue(activity.IsHealthCheck(), "Activity should be marked as HealthCheck activity"); activity.AssertResult(ActivityResult.SystemError); }
private void TestExecution( string activityName, Action <Task <bool>, ActivitySource, string> createTask, Action <TaskCompletionSource <bool> > finishTask, ActivityResult expectedResult) { using TestActivityListener listener = new TestActivityListener(activityName); ActivitySource source = new ActivitySource(activityName); TaskCompletionSource <bool> taskCompletionSource = new TaskCompletionSource <bool>(); createTask(taskCompletionSource.Task, source, activityName); Activity?activity = listener.Activities.Single(); NullableAssert.IsNotNull(activity); activity.AssertResult(ActivityResult.SystemError); finishTask(taskCompletionSource); activity.AssertResult(expectedResult); }