TheBrainFamily / wait-for-expect

Wait for expectation to be true, useful for integration and end to end testing. Integral part of react-testing-library.
MIT License
293 stars 31 forks source link

support for min consecutive passes #28

Open Neezurft opened 4 years ago

Neezurft commented 4 years ago

Hello guys! here is a PR for you to consider.

I was inspired by an issue I encountered at work while using this library. It has been really useful to me otherwise, but I found in our large codebase some tests that were non-deterministic and flaky. waitForExpect would give us false positives in those cases because it will retry them until they pass. To solve this, I added an opt-in constrain (defaults to current behaviour for backwards compatibility). The idea is that a test will have to pass a number of consecutive times before it actually passes.

I added a simple test to account for this scenario I am describing.