// // Licensed under the MIT License. See LICENSE file in the project root for full license information. // namespace MUnique.OpenMU.GameLogic.Benchmarks.Helpers; using Moq; using MUnique.OpenMU.AttributeSystem; /// /// Helper for creating test randomizers. /// public static class RandomizerTestHelper { /// /// Creates a mock randomizer with random behavior. /// /// A mock randomizer. public static IRandomizer Create() { var randomizer = new Mock(); var random = new Random(); randomizer.Setup(r => r.NextInt(It.IsAny(), It.IsAny())).Returns((int min, int max) => random.Next(min, max)); randomizer.Setup(r => r.NextDouble()).Returns(() => random.NextDouble()); randomizer.Setup(r => r.NextRandomBool(It.IsAny())).Returns((int chance) => random.Next(100) < chance); return randomizer.Object; } }