You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are some constraints at the moment with the async expressions. Of note is that toEventually does not work with async expressions (that is, expect(await someAsyncFunction()).toEventually(...) will not even compile).
Additionally, if you do use toEventually in an async context, you will need to await on the result of the entire matcher, like so:
This is because the old way of using toEventually does not work in async tests. Furthermore, our workaround (basically, using Task.yield instead of controlling the RunLoop) does not work in synchronous tests. Thus, we have two separate implementations of the toEventually family.
This is important for users of Quick, because Quick 6 (soon to be released) will run ALL tests in an asynchronous context.
Thank you, I hope you have a great day. My apologies for the churn.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Hello friends!
I'm very pleased to announce Nimble version 11. Headlining features include async/await support, and watchOS support!
https://github.com/Quick/Nimble/releases/tag/v11.0.0
Notably, async/await now is support. With XCTest-based tests, you can use Nimble like so:
There are some constraints at the moment with the async expressions. Of note is that
toEventually
does not work with async expressions (that is,expect(await someAsyncFunction()).toEventually(...)
will not even compile).Additionally, if you do use
toEventually
in an async context, you will need toawait
on the result of the entire matcher, like so:This is because the old way of using
toEventually
does not work in async tests. Furthermore, our workaround (basically, usingTask.yield
instead of controlling the RunLoop) does not work in synchronous tests. Thus, we have two separate implementations of thetoEventually
family.This is important for users of Quick, because Quick 6 (soon to be released) will run ALL tests in an asynchronous context.
Thank you, I hope you have a great day. My apologies for the churn.
Beta Was this translation helpful? Give feedback.
All reactions