Contents

wait(for:timeout:enforceOrder:)

Waits on a group of expectations for up to the specified timeout, optionally enforcing their order of fulfillment.

Declaration

func wait(for expectations: [XCTestExpectation], timeout seconds: TimeInterval, enforceOrder enforceOrderOfFulfillment: Bool) -> XCTWaiter.Result

Parameters

  • expectations:

    An array of expectations the test must satisfy.

  • seconds:

    The time, in seconds, the test allows for the fulfillment of the expectations. The default timeout allows the test to run until it reaches its execution time allowance.

  • enforceOrderOfFulfillment:

    If True, the test must satisfy the expectations in the order they appear in the array.

Return Value

A value describing the outcome of waiting for expectations.

Discussion

Expectations can appear in the expectations array only once.

The call may return before the timeout if the test fulfills all the expectations you provide.

In Objective-C code, you might use an expectation to wait on a call to an interface that uses a completion handler to return a result. From Swift code, consider calling withCheckedContinuation(function:_:) to use Concurrency instead of an expectation to wait on the result of a completion handler.

See Also

Waiting for Expectations