Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Documentation
newtype SmallDiffTime Source #
Wrapper around NominalDiffTime with custom Arbitrary
instance
The default Arbitrary
instance for NominalDiffTime
isn't very useful:
- It tends to pick huge values
- It tends not to pick integer values
- It does not shrink
Our custom instance
- Picks values between 0 and (1000 * 20 * 10) seconds:
- Maximum segment length: 1000
- Maximum slot length: 20 seconds
- Maximum number of segments: 10
- With a 0.1 second precision
- Shrinks
Instances
Arbitrary SmallDiffTime Source # | |
Defined in Test.Util.Orphans.Arbitrary | |
Show SmallDiffTime Source # | |
Defined in Test.Util.Orphans.Arbitrary showsPrec ∷ Int → SmallDiffTime → ShowS # show ∷ SmallDiffTime → String # showList ∷ [SmallDiffTime] → ShowS # |
genLimitedEpochSize ∷ Gen EpochSize Source #
The tests for CumulEpochSizes
requires that the sum of a list of these
values does not overflow.
An epoch size must be > 0.
genLimitedSlotNo ∷ Gen SlotNo Source #
The functions slotAtTime
and timeUntilNextSlot
suffer from arithmetic
overflow for very large values, so generate values that avoid overflow when
used in these two functions. The largest value generated is still sufficently
large to allow for 5e12 years worth of slots at a slot interval of 20
seconds.
genSmallSlotNo ∷ Gen SlotNo Source #
Generate a small SlotNo for the state machine tests. The runtime of the StateMachine prop_sequential tests is proportional the the upper bound.
Time
genNominalDiffTime50Years ∷ Gen NominalDiffTime Source #
Picks time span between 0 seconds and (roughly) 50 years
Note - Arbitrary instance for NominalDiffTime
comes from quickcheck-instances
and
it uses a much wider timespan.
genUTCTime50Years ∷ Gen UTCTime Source #
Picks moment between dawnOfTime
and (roughly) 50 years later
Note - Arbitrary instance for UTCTime
comes from quickcheck-instances
and it uses
a much wider timespan.