How to get a sample of a generator?

86 views Asked by At

I'm using Triq to write my property based test. How can I see what kind of data my generator produces?

Let's say I have the following generator:

-module (my).
-include_lib("triq/include/triq.hrl").
-export([valid_type_gen/1]).

valid_type_gen() -> non_empty(list(any())).

I would like to examine what kind of data it generates, i.e. something like:

$ rebar3 shell
1> my:valid_type_gen().sample() %???
[1,b,"blah"]
1

There are 1 answers

0
Andriy Drozdyuk On

Ok, I figured it out, I just need to call the sample function:

1> hd(triq_dom:sample(my:valid_type_gen())).
[8,4,3,7,6,8,11,7,5,7]

That will generate a bunch of samples, and I take the first one.