Class Eventually
- Namespace
- XBullet.EasyTesting
- Assembly
- XBullet.EasyTesting.dll
Waits for assertions or conditions to succeed without overlapping attempts.
public static class Eventually
- Inheritance
-
Eventually
- Inherited Members
Remarks
The first attempt runs immediately. Deadlines cancel the token supplied to asynchronous callbacks. Callbacks must observe cancellation or complete promptly; synchronous or uncooperative callbacks cannot be interrupted. No callback is abandoned when the wait ends.
Methods
AssertAsync(Action)
Waits for an assertion to succeed.
public static Task AssertAsync(Action assertion)
Parameters
assertionActionThe assertion to evaluate on each attempt.
Returns
- Task
A task that completes on success, cancellation, or failure.
AssertAsync(Action, CancellationToken)
Waits for an assertion to succeed.
public static Task AssertAsync(Action assertion, CancellationToken cancellationToken)
Parameters
assertionActionThe assertion to evaluate on each attempt.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
AssertAsync(Action, EventuallyOptions, CancellationToken)
Waits for an assertion to succeed.
public static Task AssertAsync(Action assertion, EventuallyOptions options, CancellationToken cancellationToken)
Parameters
assertionActionThe assertion to evaluate on each attempt.
optionsEventuallyOptionsThe timeout, polling, clock, and diagnostic settings.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
Exceptions
- EventuallyTimeoutException
The deadline expires before success.
AssertAsync(Func<CancellationToken, Task>)
Waits for an asynchronous assertion to succeed.
public static Task AssertAsync(Func<CancellationToken, Task> assertion)
Parameters
assertionFunc<CancellationToken, Task>The assertion to evaluate on each attempt.
Returns
- Task
A task that completes on success, cancellation, or failure.
AssertAsync(Func<CancellationToken, Task>, CancellationToken)
Waits for an asynchronous assertion to succeed.
public static Task AssertAsync(Func<CancellationToken, Task> assertion, CancellationToken cancellationToken)
Parameters
assertionFunc<CancellationToken, Task>The assertion to evaluate on each attempt.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
AssertAsync(Func<CancellationToken, Task>, EventuallyOptions, CancellationToken)
Waits for an asynchronous assertion to succeed.
public static Task AssertAsync(Func<CancellationToken, Task> assertion, EventuallyOptions options, CancellationToken cancellationToken)
Parameters
assertionFunc<CancellationToken, Task>The assertion to evaluate on each attempt.
optionsEventuallyOptionsThe timeout, polling, clock, and diagnostic settings.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
Exceptions
- EventuallyTimeoutException
The deadline expires before success.
AssertAsync(Func<Task>)
Waits for an asynchronous assertion to succeed.
public static Task AssertAsync(Func<Task> assertion)
Parameters
Returns
- Task
A task that completes on success, cancellation, or failure.
Remarks
The callback must finish promptly because it does not receive the deadline token.
AssertAsync(Func<Task>, CancellationToken)
Waits for an asynchronous assertion to succeed.
public static Task AssertAsync(Func<Task> assertion, CancellationToken cancellationToken)
Parameters
assertionFunc<Task>The assertion to evaluate on each attempt.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
Remarks
The callback must finish promptly because it does not receive the deadline token.
AssertAsync(Func<Task>, EventuallyOptions, CancellationToken)
Waits for an asynchronous assertion to succeed.
public static Task AssertAsync(Func<Task> assertion, EventuallyOptions options, CancellationToken cancellationToken)
Parameters
assertionFunc<Task>The assertion to evaluate on each attempt.
optionsEventuallyOptionsThe timeout, polling, clock, and diagnostic settings.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
Remarks
The callback must finish promptly because it does not receive the deadline token.
WaitUntilAsync(Func<bool>)
Waits for a condition to succeed.
public static Task WaitUntilAsync(Func<bool> condition)
Parameters
Returns
- Task
A task that completes on success, cancellation, or failure.
WaitUntilAsync(Func<bool>, CancellationToken)
Waits for a condition to succeed.
public static Task WaitUntilAsync(Func<bool> condition, CancellationToken cancellationToken)
Parameters
conditionFunc<bool>The condition to evaluate on each attempt.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
WaitUntilAsync(Func<bool>, EventuallyOptions, CancellationToken)
Waits for a condition to succeed.
public static Task WaitUntilAsync(Func<bool> condition, EventuallyOptions options, CancellationToken cancellationToken)
Parameters
conditionFunc<bool>The condition to evaluate on each attempt.
optionsEventuallyOptionsThe timeout, polling, clock, and diagnostic settings.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
Exceptions
- EventuallyTimeoutException
The deadline expires before success.
WaitUntilAsync(Func<CancellationToken, Task<bool>>)
Waits for an asynchronous condition to succeed.
public static Task WaitUntilAsync(Func<CancellationToken, Task<bool>> condition)
Parameters
conditionFunc<CancellationToken, Task<bool>>The condition to evaluate on each attempt.
Returns
- Task
A task that completes on success, cancellation, or failure.
WaitUntilAsync(Func<CancellationToken, Task<bool>>, CancellationToken)
Waits for an asynchronous condition to succeed.
public static Task WaitUntilAsync(Func<CancellationToken, Task<bool>> condition, CancellationToken cancellationToken)
Parameters
conditionFunc<CancellationToken, Task<bool>>The condition to evaluate on each attempt.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
WaitUntilAsync(Func<CancellationToken, Task<bool>>, EventuallyOptions, CancellationToken)
Waits for an asynchronous condition to succeed.
public static Task WaitUntilAsync(Func<CancellationToken, Task<bool>> condition, EventuallyOptions options, CancellationToken cancellationToken)
Parameters
conditionFunc<CancellationToken, Task<bool>>The condition to evaluate on each attempt.
optionsEventuallyOptionsThe timeout, polling, clock, and diagnostic settings.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
Exceptions
- EventuallyTimeoutException
The deadline expires before success.
WaitUntilAsync(Func<Task<bool>>)
Waits for an asynchronous condition to succeed.
public static Task WaitUntilAsync(Func<Task<bool>> condition)
Parameters
Returns
- Task
A task that completes on success, cancellation, or failure.
Remarks
The callback must finish promptly because it does not receive the deadline token.
WaitUntilAsync(Func<Task<bool>>, CancellationToken)
Waits for an asynchronous condition to succeed.
public static Task WaitUntilAsync(Func<Task<bool>> condition, CancellationToken cancellationToken)
Parameters
conditionFunc<Task<bool>>The condition to evaluate on each attempt.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
Remarks
The callback must finish promptly because it does not receive the deadline token.
WaitUntilAsync(Func<Task<bool>>, EventuallyOptions, CancellationToken)
Waits for an asynchronous condition to succeed.
public static Task WaitUntilAsync(Func<Task<bool>> condition, EventuallyOptions options, CancellationToken cancellationToken)
Parameters
conditionFunc<Task<bool>>The condition to evaluate on each attempt.
optionsEventuallyOptionsThe timeout, polling, clock, and diagnostic settings.
cancellationTokenCancellationTokenThe caller's cancellation token.
Returns
- Task
A task that completes on success, cancellation, or failure.
Remarks
The callback must finish promptly because it does not receive the deadline token.