Split random data generation to a separate module to make it easy to replace