Sorry I forgot to answer the original 3 questions:
- StreamData is pure Elixir, shrinks like Hypothesis/test.check (so the “good” way), it has a chance of getting merged into Elixir core, is integrated with ExUnit
- There are many functions in
StreamDatato create custom generators. The basics arebind/2,map/2,filter/3, but there’s alsoStreamData.gen allwhich is syntactic sugar to create really easy to read generators. - The values are completely random but the testing is driven by a “generation size” (mentioned in the docs) which guarantees we start with smaller values which makes the chance of an empty list very very high
Let me know if you have more questions ![]()


















