January 19th 2024, 8:27:45 am EST #

How to get a random number in Elixir.

iex(1)> :rand.uniform(6)

iex(2)> Enum.random(1..6)

Sometimes you need a unique integer, and of course Elixir has you covered. This is very useful for Factories if you want to implement something like sequences to avoid errors due to database unique constraints.

iex(1)> System.unique_integer(~w[monotonic positive]a)
1
iex(2)> System.unique_integer(~w[monotonic positive]a)
2
iex(3)> System.unique_integer(~w[monotonic positive]a)
3