Skip to content

Commit da51c3d

Browse files
Add randomSampleOne (#114)
* Add randomSampleOne Randomly generates a single value
2 parents 64d6f34 + 5038acf commit da51c3d

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

src/Test/QuickCheck/Gen.purs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,13 +229,19 @@ evalGen = evalState <<< unGen
229229
sample :: forall a. Seed -> Size -> Gen a -> Array a
230230
sample seed sz g = evalGen (vectorOf sz g) { newSeed: seed, size: sz }
231231

232+
-- | Generate a single value using a randomly generated seed.
233+
randomSampleOne :: forall a. Gen a -> Effect a
234+
randomSampleOne gen = do
235+
seed <- randomSeed
236+
pure $ evalGen gen { newSeed: seed, size: 10 }
237+
232238
-- | Sample a random generator, using a randomly generated seed
233239
randomSample' :: forall a. Size -> Gen a -> Effect (Array a)
234240
randomSample' n g = do
235241
seed <- randomSeed
236242
pure $ sample seed n g
237243

238-
-- | Get a random sample of 10 values
244+
-- | Get a random sample of 10 values. For a single value, use `randomSampleOne`.
239245
randomSample :: forall a. Gen a -> Effect (Array a)
240246
randomSample = randomSample' 10
241247

0 commit comments

Comments
 (0)