object PropertyCheckResult
- Alphabetic
- By Inheritance
- PropertyCheckResult
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
case class
Exhausted(succeeded: Long, discarded: Long, names: List[String], argsPassed: List[PropertyArgument], initSeed: Long) extends PropertyCheckResult with Product with Serializable
This Property Check was inconclusive -- after running for the desired number of times, so many attempts were discarded that the property as defined should be considered suspect.
This Property Check was inconclusive -- after running for the desired number of times, so many attempts were discarded that the property as defined should be considered suspect.
Note that this does *not* mean that the check failed. No falsifying examples were found. The problem is that the property rejected so many of the generated parameters that it looks a bit iffy.
TODO: describe how constraints work in this check environment, and precisely how discarding works.
- succeeded
How many generated values succeeded.
- discarded
How many generated values were rejected as not satisfying the property's preconditions.
- names
TODO: how does this parameter different from argsPassed?
- argsPassed
The arguments passed in to this check.
- initSeed
The random seed used for this check. This seed is used by the checking code, to pass in to calls to Randomizer. Reusing the same seed for subsequent runs should produce the same results, so this can be valuable debugging information if you are seeing inconsistent results -- this tells you a seed that produced indeterminate results.
-
case class
Failure(succeeded: Long, ex: Option[Throwable], names: List[String], argsPassed: List[PropertyArgument], initSeed: Long) extends PropertyCheckResult with Product with Serializable
This Property Check did not succeed -- the property was falsified.
This Property Check did not succeed -- the property was falsified.
This generally indicates a bug in your code. Values were generated that turned out to produce an error. The next step is usually to examine these values, and understand why they caused an error.
Note that this does not
mean that the code under test is in error: it is possible that the property itself is incorrect. It is good practice to check both, and figure out which one is wrong.necessarily- succeeded
How many generated values passed the property before the failure.
- ex
The Exception that was thrown by the property, if any.
- names
TODO: how does this parameter differ from argsPassed?
- argsPassed
The arguments passed in to this check.
- initSeed
The random seed used for this check. This seed is used by the checking code, to pass in to calls to Randomizer. Reusing the same seed for subsequent runs should produce the same results, so this can be extremely valuable while debugging the error: re-running the property with the same seed should retry the test with exactly the same text data, so you can easily test your fixes.
-
case class
Success(args: List[PropertyArgument], initSeed: Long) extends PropertyCheckResult with Product with Serializable
This Property Check was successful -- after running for the desired number of times, it was not falsified.
This Property Check was successful -- after running for the desired number of times, it was not falsified.
Note that "not falsified" does not mean the same thing as "is definitely correct". The check code tries hard to test edge cases that are likely to detect errors, but there are exceptions, and the check is only as good as the property you have defined. But if the property accurately describes the problem, this usually signifies that things look good.
- args
The arguments passed in to this check.
- initSeed
The random seed used for this check. This seed is used by the checking code, to pass in to calls to Randomizer. Reusing the same seed for subsequent runs should produce the same results, so this can be valuable debugging information if you are seeing inconsistent results -- this tells you a seed that passed the check.
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )