In this little code example I'm trying to use the same random number
generator to produce a randomCover over an array multiple times.
I make 4 assertions, the first two pass, the last two fail. One of the
benefits for providing a seed to a generator is that you can reproduce
the behavior, but at the same time the generator can be used throughout
the program to create random events. Instead, the events are the same.
This is a bug right?
import std.array;
import std.conv;
import std.random;
void main() {
auto arr = [1,2,3,4];
auto gen = Random(unpredictableSeed);
assert(randomCover(arr,gen) != randomCover(arr,gen));
auto result1 = randomCover(arr,gen);
auto result2 = randomCover(arr,gen);
assert(result1 != result2);
auto arr1 = array(randomCover(arr,gen));
auto arr2 = array(randomCover(arr,gen));
assert(arr1 != arr2);
auto str1 = to!string(randomCover(arr,gen));
auto str2 = to!string(randomCover(arr,gen));
assert(str1 != str2);
}