> There is no way we can expose the seed because it needs to be generated *per run*.
Why does the fact that it needs to be generated *per run* mean it cannot be exposed? It's exposed internally to whatever part of ExUnit orders the tests, so why can't it be exposed publicly? On Thursday, May 5, 2016 at 8:49:48 PM UTC-7, Myron Marston wrote: > > Currently ExUnit.configuration only exposes config values that the user > has explicitly set. That means that if you pass --seed, > ExUnit.configuration[:seed] will be available, but if you do not pass > --seed, and allow ExUnit to set the seed, it will not be available. > > I’ve got a test that winds up involving some randomization. in the off > chance that a particular random value cause the test to fail, I’d like to > seed randomization in the test setup with the same seed that ExUnit is > already using, but it’s difficult since ExUnit.configuration[:seed] is > not always available. I came up with a work around in test_helper.exs: > > existing_or_new_seed = > case ExUnit.configuration[:seed] do > nil -> :os.timestamp |> elem(2) > existing_seed -> existing_seed > end > ExUnit.configure(seed: existing_or_new_seed) > > …but it feels like I shouldn’t have to jump through those hoops. (And it’s > unfortunate that I’ve had to copy the code to provide a seed from ExUnit). > > Would the Elixir team be amenable to a PR that ensures that > ExUnit.configuration[:seed] is always available, regardless of whether > ExUnit set the value or the user set the value via --seed? > > Thanks! > Myron > > -- You received this message because you are subscribed to the Google Groups "elixir-lang-core" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/elixir-lang-core/bdc50824-7c00-4f54-a06f-3b9fbf216703%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
