Skip to content

Basic extensions

Basic extensions #16

GitHub Actions / DotNET Tests succeeded May 18, 2024 in 0s

116 passed, 0 failed and 0 skipped

Tests passed successfully

Report Passed Failed Skipped Time
TaskFlow.Extensions.Microsoft.DependencyInjection.Tests/TestResults/stage/test-results.trx 8✅ 953ms
TaskFlow.Tests/TestResults/stage/test-results.trx 108✅ 21s

✅ TaskFlow.Extensions.Microsoft.DependencyInjection.Tests/TestResults/stage/test-results.trx

8 tests were completed in 953ms with 8 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
TaskFlow.Extensions.Microsoft.DependencyInjection.Tests.CustomTaskFlowServiceCollectionExtensionsFixture 1✅ 20ms
TaskFlow.Extensions.Microsoft.DependencyInjection.Tests.DefaultTaskFlowServiceCollectionExtensionsFixture 7✅ 126ms

✅ TaskFlow.Extensions.Microsoft.DependencyInjection.Tests.CustomTaskFlowServiceCollectionExtensionsFixture

✅ AddTaskFlow_ShouldRegisterTaskFlowInfoAndTaskScheduler

✅ TaskFlow.Extensions.Microsoft.DependencyInjection.Tests.DefaultTaskFlowServiceCollectionExtensionsFixture

✅ AddTaskFlow_DisposeScope_ShouldCancelPendingTask
✅ AddTaskFlow_DisposeScopeAsync_ShouldCancelPendingTask
✅ AddTaskFlow_Scopes_WhenDisposeOneScopeCanEnqueueToAnotherScope
✅ AddTaskFlow_ScopesShouldHaveOwnTaskFlow
✅ AddTaskFlow_ShouldNotRegisterTaskFlow
✅ AddTaskFlow_ShouldRegisterTaskFlowInfoAndTaskScheduler
✅ AddTaskFlow_WithOptions_ShouldRegisterTaskFlowWithOptions

✅ TaskFlow.Tests/TestResults/stage/test-results.trx

108 tests were completed in 21s with 108 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
TaskFlow.Tests.CurrentThreadTaskFlowFixture 30✅ 2s
TaskFlow.Tests.DedicatedThreadTaskFlowFixture 30✅ 2s
TaskFlow.Tests.Extensions.CancellationScopeTaskSchedulerExtensionsFixture 4✅ 4s
TaskFlow.Tests.Extensions.CancelPreviousTaskSchedulerExtensionsFixture 4✅ 6s
TaskFlow.Tests.Extensions.TimeoutTaskSchedulerExtensionsFixture 10✅ 5s
TaskFlow.Tests.TaskFlowFixture 30✅ 2s

✅ TaskFlow.Tests.CurrentThreadTaskFlowFixture

✅ Dispose_CanCallAfterDisposeAsync
✅ Dispose_CanCallMultipleTimes
✅ Dispose_ShouldNotThrowIfTaskFuncFailed
✅ Dispose_ShouldReturnFalseIfTimedOut
✅ Dispose_ShouldReturnTrueIfNotTimedOut
✅ Dispose_ShouldWaitQueuedOperations
✅ DisposeAsync_CanCallMultipleTimes
✅ DisposeAsync_ShouldCancelPendingTask
✅ DisposeAsync_ShouldNotThrowIfTaskFuncFailed
✅ DisposeAsync_ShouldWaitQueuedOperations
✅ Enqueue_AsyncContinuationShouldHappenBeforeNextEnqueuedItems(False)
✅ Enqueue_AsyncContinuationShouldHappenBeforeNextEnqueuedItems(True)
✅ Enqueue_AsyncContinuationShouldHappenOnSameScheduler(False)
✅ Enqueue_AsyncContinuationShouldHappenOnSameScheduler(True)
✅ Enqueue_AsyncContinuationThrowsException_ShouldExecuteNextOperation(False)
✅ Enqueue_AsyncContinuationThrowsException_ShouldExecuteNextOperation(True)
✅ Enqueue_CanExecuteNextOperationIfPreviousCanceled
✅ Enqueue_CanExecuteNextOperationIfPreviousFailed
✅ Enqueue_ExecuteInOrderIfIntermediateCanceled
✅ Enqueue_MultipleTimes_ShouldNotKeepReferencesToAllResults
✅ Enqueue_PropagatesStateToTaskFunc
✅ Enqueue_ResultReferencedFromStack_ResultShouldBeAlive
✅ Enqueue_ReturnedTaskShouldBeCanceledWhenTaskFuncCanceled
✅ Enqueue_ReturnedTaskShouldBeFailedWhenTaskFuncFailed
✅ Enqueue_ReturnedTaskShouldCompleteWhenTaskFuncComplete
✅ Enqueue_ShouldExecuteInScheduledOrder
✅ Enqueue_ShouldThrowAfterDispose
✅ Enqueue_ShouldThrowAfterDisposeAsync
✅ Enqueue_WhenFinished_ShouldNotKeepReferenceToResult
✅ Enqueue_WhenInitiallyCanceled_ShouldExecuteOperation

✅ TaskFlow.Tests.DedicatedThreadTaskFlowFixture

✅ Dispose_CanCallAfterDisposeAsync
✅ Dispose_CanCallMultipleTimes
✅ Dispose_ShouldNotThrowIfTaskFuncFailed
✅ Dispose_ShouldReturnFalseIfTimedOut
✅ Dispose_ShouldReturnTrueIfNotTimedOut
✅ Dispose_ShouldWaitQueuedOperations
✅ DisposeAsync_CanCallMultipleTimes
✅ DisposeAsync_ShouldCancelPendingTask
✅ DisposeAsync_ShouldNotThrowIfTaskFuncFailed
✅ DisposeAsync_ShouldWaitQueuedOperations
✅ Enqueue_AsyncContinuationShouldHappenBeforeNextEnqueuedItems(False)
✅ Enqueue_AsyncContinuationShouldHappenBeforeNextEnqueuedItems(True)
✅ Enqueue_AsyncContinuationShouldHappenOnSameScheduler(False)
✅ Enqueue_AsyncContinuationShouldHappenOnSameScheduler(True)
✅ Enqueue_AsyncContinuationThrowsException_ShouldExecuteNextOperation(False)
✅ Enqueue_AsyncContinuationThrowsException_ShouldExecuteNextOperation(True)
✅ Enqueue_CanExecuteNextOperationIfPreviousCanceled
✅ Enqueue_CanExecuteNextOperationIfPreviousFailed
✅ Enqueue_ExecuteInOrderIfIntermediateCanceled
✅ Enqueue_MultipleTimes_ShouldNotKeepReferencesToAllResults
✅ Enqueue_PropagatesStateToTaskFunc
✅ Enqueue_ResultReferencedFromStack_ResultShouldBeAlive
✅ Enqueue_ReturnedTaskShouldBeCanceledWhenTaskFuncCanceled
✅ Enqueue_ReturnedTaskShouldBeFailedWhenTaskFuncFailed
✅ Enqueue_ReturnedTaskShouldCompleteWhenTaskFuncComplete
✅ Enqueue_ShouldExecuteInScheduledOrder
✅ Enqueue_ShouldThrowAfterDispose
✅ Enqueue_ShouldThrowAfterDisposeAsync
✅ Enqueue_WhenFinished_ShouldNotKeepReferenceToResult
✅ Enqueue_WhenInitiallyCanceled_ShouldExecuteOperation

✅ TaskFlow.Tests.Extensions.CancellationScopeTaskSchedulerExtensionsFixture

✅ MultipleScopes_Cancel_ShouldCancelOperationsThatBelongToScope(System.Threading.Tasks.Flow.DedicatedThreadTaskFlow)
✅ MultipleScopes_Cancel_ShouldCancelOperationsThatBelongToScope(System.Threading.Tasks.Flow.TaskFlow)
✅ SingleScope_Cancel_ShouldCancelOperationsThatBelongToScope(System.Threading.Tasks.Flow.DedicatedThreadTaskFlow)
✅ SingleScope_Cancel_ShouldCancelOperationsThatBelongToScope(System.Threading.Tasks.Flow.TaskFlow)

✅ TaskFlow.Tests.Extensions.CancelPreviousTaskSchedulerExtensionsFixture

✅ Enqueue_ShouldCancelPreviousOperation(System.Threading.Tasks.Flow.DedicatedThreadTaskFlow)
✅ Enqueue_ShouldCancelPreviousOperation(System.Threading.Tasks.Flow.TaskFlow)
✅ Enqueue_ShouldNotCancelPreviousOperations_OnParentTaskScheduler(System.Threading.Tasks.Flow.DedicatedThreadTaskFlow)
✅ Enqueue_ShouldNotCancelPreviousOperations_OnParentTaskScheduler(System.Threading.Tasks.Flow.TaskFlow)

✅ TaskFlow.Tests.Extensions.TimeoutTaskSchedulerExtensionsFixture

✅ InfiniteTimeout_ShouldNotThrowTimeoutException(System.Threading.Tasks.Flow.DedicatedThreadTaskFlow)
✅ InfiniteTimeout_ShouldNotThrowTimeoutException(System.Threading.Tasks.Flow.TaskFlow)
✅ NoTimeout_ShouldNotThrowTimeoutException(System.Threading.Tasks.Flow.DedicatedThreadTaskFlow)
✅ NoTimeout_ShouldNotThrowTimeoutException(System.Threading.Tasks.Flow.TaskFlow)
✅ Timeout_CancelsTask(System.Threading.Tasks.Flow.DedicatedThreadTaskFlow)
✅ Timeout_CancelsTask(System.Threading.Tasks.Flow.TaskFlow)
✅ Timeout_ShouldThrowTimeoutException(System.Threading.Tasks.Flow.DedicatedThreadTaskFlow)
✅ Timeout_ShouldThrowTimeoutException(System.Threading.Tasks.Flow.TaskFlow)
✅ Timeout_WhenOperationNameSpecified_ShouldThrowTimeoutExceptionWithOperationName(System.Threading.Tasks.Flow.DedicatedThreadTaskFlow)
✅ Timeout_WhenOperationNameSpecified_ShouldThrowTimeoutExceptionWithOperationName(System.Threading.Tasks.Flow.TaskFlow)

✅ TaskFlow.Tests.TaskFlowFixture

✅ Dispose_CanCallAfterDisposeAsync
✅ Dispose_CanCallMultipleTimes
✅ Dispose_ShouldNotThrowIfTaskFuncFailed
✅ Dispose_ShouldReturnFalseIfTimedOut
✅ Dispose_ShouldReturnTrueIfNotTimedOut
✅ Dispose_ShouldWaitQueuedOperations
✅ DisposeAsync_CanCallMultipleTimes
✅ DisposeAsync_ShouldCancelPendingTask
✅ DisposeAsync_ShouldNotThrowIfTaskFuncFailed
✅ DisposeAsync_ShouldWaitQueuedOperations
✅ Enqueue_AsyncContinuationShouldHappenBeforeNextEnqueuedItems(False)
✅ Enqueue_AsyncContinuationShouldHappenBeforeNextEnqueuedItems(True)
✅ Enqueue_AsyncContinuationShouldHappenOnSameScheduler(False)
✅ Enqueue_AsyncContinuationShouldHappenOnSameScheduler(True)
✅ Enqueue_AsyncContinuationThrowsException_ShouldExecuteNextOperation(False)
✅ Enqueue_AsyncContinuationThrowsException_ShouldExecuteNextOperation(True)
✅ Enqueue_CanExecuteNextOperationIfPreviousCanceled
✅ Enqueue_CanExecuteNextOperationIfPreviousFailed
✅ Enqueue_ExecuteInOrderIfIntermediateCanceled
✅ Enqueue_MultipleTimes_ShouldNotKeepReferencesToAllResults
✅ Enqueue_PropagatesStateToTaskFunc
✅ Enqueue_ResultReferencedFromStack_ResultShouldBeAlive
✅ Enqueue_ReturnedTaskShouldBeCanceledWhenTaskFuncCanceled
✅ Enqueue_ReturnedTaskShouldBeFailedWhenTaskFuncFailed
✅ Enqueue_ReturnedTaskShouldCompleteWhenTaskFuncComplete
✅ Enqueue_ShouldExecuteInScheduledOrder
✅ Enqueue_ShouldThrowAfterDispose
✅ Enqueue_ShouldThrowAfterDisposeAsync
✅ Enqueue_WhenFinished_ShouldNotKeepReferenceToResult
✅ Enqueue_WhenInitiallyCanceled_ShouldExecuteOperation