object PropertyCheckResult
- Alphabetic
- By Inheritance
- PropertyCheckResult
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
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[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- 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(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()