Companion object that facilitates the importing of Eventually
members as an alternative to mixing in the trait. One use case is to import Eventually
's members so you can use them in the Scala interpreter:
$ scala -cp scalatest-1.8.jar Welcome to Scala version 2.9.1.final (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_29). Type in expressions to have them evaluated. Type :help for more information. scala> import org.scalatest._ import org.scalatest._ scala> import Matchers._ import Matchers._ scala> import concurrent.Eventually._ import concurrent.Eventually._ scala> val xs = 1 to 125 xs: scala.collection.immutable.Range.Inclusive = Range(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, ..., 125) scala> val it = xs.iterator it: Iterator[Int] = non-empty iterator scala> eventually { it.next should be (3) } scala> eventually { Thread.sleep(999); it.next should be (3) } org.scalatest.TestFailedException: The code passed to eventually never returned normally. Attempted 2 times, sleeping 10 milliseconds between each attempt. at org.scalatest.Eventually$class.tryTryAgain$1(Eventually.scala:313) at org.scalatest.Eventually$class.eventually(Eventually.scala:322) ...
Attributes
- Companion
- trait
- Graph
-
- Supertypes
-
trait Eventuallytrait PatienceConfigurationtrait ScaledTimeSpansclass Objecttrait Matchableclass AnyShow all
- Self type
-
Eventually.type
Members list
Type members
Inherited classlikes
Configuration object for asynchronous constructs, such as those provided by traits Eventually
and Waiters
.
Configuration object for asynchronous constructs, such as those provided by traits Eventually
and Waiters
.
The default values for the parameters are:
Configuration Parameter | Default Value |
---|---|
timeout |
scaled(150 milliseconds) |
interval |
scaled(15 milliseconds) |
Value parameters
- interval
-
the amount of time to sleep between each check of the status of an asynchronous operation when polling
- timeout
-
the maximum amount of time to wait for an asynchronous operation to complete before giving up and throwing
TestFailedException
.
Attributes
- Inherited from:
- AbstractPatienceConfiguration
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Value members
Inherited methods
Invokes the passed by-name parameter repeatedly until it either succeeds, or a configured maximum amount of time has passed, sleeping a configured interval between attempts.
Invokes the passed by-name parameter repeatedly until it either succeeds, or a configured maximum amount of time has passed, sleeping a configured interval between attempts.
The by-name parameter "succeeds" if it returns a result. It "fails" if it throws any exception that would normally cause a test to fail. (These are any exceptions except TestPendingException
and Error
s listed in the Treatment of java.lang.Error
s section of the documentation of trait Suite
.)
The maximum amount of time in milliseconds to tolerate unsuccessful attempts before giving up is configured by the timeout
field of the PatienceConfig
passed implicitly as the last parameter. The interval to sleep between attempts is configured by the interval
field of the PatienceConfig
passed implicitly as the last parameter.
Value parameters
- config
-
the
PatienceConfig
object containing thetimeout
andinterval
parameters - fun
-
the by-name parameter to repeatedly invoke
- pos
-
the position of the call site
- retrying
-
the
Retrying
implementation for typeT
Attributes
- Returns
-
the result of invoking the
fun
by-name parameter, the first time it succeeds - Inherited from:
- Eventually
Invokes the passed by-name parameter repeatedly until it either succeeds, or a configured maximum amount of time has passed, sleeping a configured interval between attempts.
Invokes the passed by-name parameter repeatedly until it either succeeds, or a configured maximum amount of time has passed, sleeping a configured interval between attempts.
The by-name parameter "succeeds" if it returns a result. It "fails" if it throws any exception that would normally cause a test to fail. (These are any exceptions except TestPendingException
and Error
s listed in the Treatment of java.lang.Error
s section of the documentation of trait Suite
.)
The maximum amount of time in milliseconds to tolerate unsuccessful attempts before giving up is configured by the timeout
field of the PatienceConfig
passed implicitly as the last parameter. The interval to sleep between attempts is configured by the value contained in the passed interval
parameter.
Value parameters
- config
-
the
PatienceConfig
object containing the (used)timeout
and (unused)interval
parameters - fun
-
the by-name parameter to repeatedly invoke
- interval
-
the
Interval
configuration parameter - pos
-
the position of the call site
- retrying
-
the
Retrying
implementation for typeT
Attributes
- Returns
-
the result of invoking the
fun
by-name parameter, the first time it succeeds - Inherited from:
- Eventually
Invokes the passed by-name parameter repeatedly until it either succeeds, or a configured maximum amount of time has passed, sleeping a configured interval between attempts.
Invokes the passed by-name parameter repeatedly until it either succeeds, or a configured maximum amount of time has passed, sleeping a configured interval between attempts.
The by-name parameter "succeeds" if it returns a result. It "fails" if it throws any exception that would normally cause a test to fail. (These are any exceptions except TestPendingException
and Error
s listed in the Treatment of java.lang.Error
s section of the documentation of trait Suite
.)
The maximum amount of time in milliseconds to tolerate unsuccessful attempts before giving up and throwing TestFailedException
is configured by the value contained in the passed timeout
parameter. The interval to sleep between attempts is configured by the interval
field of the PatienceConfig
passed implicitly as the last parameter.
Value parameters
- config
-
the
PatienceConfig
object containing the (unused)timeout
and (used)interval
parameters - fun
-
the by-name parameter to repeatedly invoke
- pos
-
the position of the call site
- retrying
-
the
Retrying
implementation for typeT
- timeout
-
the
Timeout
configuration parameter
Attributes
- Returns
-
the result of invoking the
fun
by-name parameter, the first time it succeeds - Inherited from:
- Eventually
Invokes the passed by-name parameter repeatedly until it either succeeds, or a configured maximum amount of time has passed, sleeping a configured interval between attempts.
Invokes the passed by-name parameter repeatedly until it either succeeds, or a configured maximum amount of time has passed, sleeping a configured interval between attempts.
The by-name parameter "succeeds" if it returns a result. It "fails" if it throws any exception that would normally cause a test to fail. (These are any exceptions except TestPendingException
and Error
s listed in the Treatment of java.lang.Error
s section of the documentation of trait Suite
.)
The maximum amount of time in milliseconds to tolerate unsuccessful attempts before giving up and throwing TestFailedException
is configured by the value contained in the passed timeout
parameter. The interval to sleep between attempts is configured by the value contained in the passed interval
parameter.
Type parameters
- T
-
type of the by-name parameter
fun
Value parameters
- fun
-
the by-name parameter to repeatedly invoke
- interval
-
the
Interval
configuration parameter - pos
-
the position of the call site
- retrying
-
the
Retrying
implementation for typeT
- timeout
-
the
Timeout
configuration parameter
Attributes
- Returns
-
the result of invoking the
fun
by-name parameter, the first time it succeeds - Inherited from:
- Eventually
Returns an Interval
configuration parameter containing the passed value, which specifies the amount of time to sleep after a retry.
Returns an Interval
configuration parameter containing the passed value, which specifies the amount of time to sleep after a retry.
Attributes
- Inherited from:
- PatienceConfiguration
Scales the passed Span
by the Double
factor returned by spanScaleFactor
.
Scales the passed Span
by the Double
factor returned by spanScaleFactor
.
The Span
is scaled by invoking its scaledBy
method, thus this method has the same behavior: The value returned by spanScaleFactor
can be any positive number or zero, including a fractional number. A number greater than one will scale the Span
up to a larger value. A fractional number will scale it down to a smaller value. A factor of 1.0 will cause the exact same Span
to be returned. A factor of zero will cause Span.ZeroLength
to be returned. If overflow occurs, Span.Max
will be returned. If underflow occurs, Span.ZeroLength
will be returned.
Attributes
- Throws
-
IllegalArgumentException
if the value returned from
spanScaleFactor
is less than zero - Inherited from:
- ScaledTimeSpans
The factor by which the scaled
method will scale Span
s.
The factor by which the scaled
method will scale Span
s.
The default implementation of this method will return the span scale factor that was specified for the run, or 1.0 if no factor was specified. For example, you can specify a span scale factor when invoking ScalaTest via the command line by passing a -F
argument to Runner
.
Attributes
- Inherited from:
- ScaledTimeSpans
Returns a Timeout
configuration parameter containing the passed value, which specifies the maximum amount to wait for an asynchronous operation to complete.
Returns a Timeout
configuration parameter containing the passed value, which specifies the maximum amount to wait for an asynchronous operation to complete.
Attributes
- Inherited from:
- PatienceConfiguration
Implicits
Inherited implicits
Implicit PatienceConfig
value providing default configuration values.
Implicit PatienceConfig
value providing default configuration values.
To change the default configuration, override or hide this def
with another implicit PatienceConfig
containing your desired default configuration values.
Attributes
- Inherited from:
- PatienceConfiguration