Comments (6)
That sounds like a good idea. Not sure how easy it would be to implement though. I think we need a new concept that unifies atMostTimes
and atMost
. I.e. a StopCondition
or something similar. I.e. there can be a TimingBasedStopCondition
(atMost
) and a CountBasedStopCondition
(atMostTimes
) that are both StopCondition
's. If so you ought to be able to a supply custom StopCondition
to Awaitility similar to how to can define custom poll intervals. It would also be cool if StopCondition
's can be composable..
from awaitility.
Agree with your thought on the abstraction - let me see if i can spare some cycles and get you a pull request.
from awaitility.
That would be great!
from awaitility.
I have done intial refactoring to change duration to time based stop condition. This is draft to get all the test passing. I will relook at cleaning this change up before i proceed with Count based stop condition. Meanwhile if you have any thoughts on the commit- please let me know.
from awaitility.
There has been some changes internally as part of PR 45. There's now a WaitConstraint interface that (currently) have two implementations. Perhaps this could be refactored to also support this use case? I.e. instead of having methods such as getMaxWaitTime
in the interface it could have a method such as isExceeded(pollCount, currentTime)
and the implementations could react to this. This method should probably be invoked from the ConditionAwaiter class since it has this kind of information.
from awaitility.
Did anything happen further on this request, is it still being considered?
from awaitility.
Related Issues (20)
- `atMost` not respected if blocking method used in `until` HOT 1
- Add code examples
- atLeast/during not enforced unless until is declared HOT 2
- Feature request: Inverse await assertion HOT 3
- Support for `kotlin.time.Duration` in Kotlin DSL HOT 2
- Await AtMost Until - Never Times Out HOT 1
- Feature Request: support assertions in failFast condition HOT 5
- Dynamic reason support for fail fast feature HOT 1
- Direct support for coroutines HOT 3
- fieldIn() used with field in super class generates internal error
- Assert that a method indeed blocks for a while
- Feature proposal: ConditionFactory::messageOnFailure method HOT 1
- Add "isCompleted()" to EvaluatedCondition
- Add Support for java.util.concurrent.CountDownLatch
- await().until(() -> true) fails because the default timeout is not dynamic HOT 1
- how to migrate from 3.x to 4.x HOT 1
- Can i replace ConditionTimeoutException with Assertion error?
- Add getter for Timeout/PollDelay/PollInterval
- Lambda classes can no longer be detected using $$Lambda$
- New Clojure wrapper for Awaitility HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from awaitility.