public void SynchronizedTest() { var source = new SynchronizedRandomSource(Generator.DefaultSourceFactory()); var random = new Generator(source, "SynchronizedTest".ToCharArray()); var values = new HashSet <uint>(); for (int i = 0; i < 10000; i++) { values.Add(random.UInt32()); } random = new Generator(source, "SynchronizedTest".ToCharArray()); var values1 = new HashSet <uint>(); var values2 = new HashSet <uint>(); Parallel.Invoke( delegate { for (int i = 0; i < 5000; i++) { values1.Add(random.UInt32()); } }, delegate { for (int i = 0; i < 5000; i++) { values2.Add(random.UInt32()); } } ); values1.UnionWith(values2); values.ExceptWith(values1); Assert.AreEqual(0, values.Count); }
public void CloneTest() { var source = new SynchronizedRandomSource(new XorShiftRandomSource()); SHA256RandomSourceTests.CloneTest(source); }