public void RandomSeed_Tests() { List <int> available_roles = new List <int>() { PD_Player_Roles.Operations_Expert, PD_Player_Roles.Researcher, PD_Player_Roles.Medic, PD_Player_Roles.Scientist }; Random randomness_provider = new Random(1000); PD_Game game_1 = PD_Game.Create_Game__AvailableRolesList( randomness_provider, 4, 0, available_roles ); randomness_provider = new Random(1000); PD_Game game_2 = PD_Game.Create_Game__AvailableRolesList( randomness_provider, 4, 0, available_roles ); randomness_provider = new Random(1000); while (game_1.GQ_Is_Ongoing()) { game_1.Apply_Action( randomness_provider, game_1.CurrentAvailablePlayerActions.GetOneRandom(randomness_provider) ); } randomness_provider = new Random(1000); while (game_2.GQ_Is_Ongoing()) { game_2.Apply_Action( randomness_provider, game_2.CurrentAvailablePlayerActions.GetOneRandom(randomness_provider) ); } game_2.unique_id = game_1.unique_id; game_2.OverrideStartTime(game_1.start_time); game_2.OverrideEndTime(game_1.end_time); Assert.IsTrue(game_1.Equals(game_2)); Assert.IsTrue(game_1 == game_2); Assert.IsTrue(game_1.GetHashCode() == game_2.GetHashCode()); }