Skip to content

Steps which return tasks that never complete, are never completed

Adam Ralph edited this page Feb 23, 2018 · 2 revisions

This problem occurs when a step contains an expression which returns a Task which will never be completed.

For example, an expression which assigns a Task variable will return that Task:

"Given a task"
    .x(() => task = new Task(() => { }));

When the step is executed, will await the Task before executing the next step. Because the Task never completes, the step will never complete.

The workaround is to use a block instead of an expression:

"Given a task"
    .x(() =>
        task = new Task(() => { })
Clone this wiki locally
You can’t perform that action at this time.