internal Parameter(int min, int max, bool logBase = false, int steps = 100) { Contract.Assert(max > min); Contract.Assert(steps > 0); Contract.Assert(!logBase || (logBase && min > 0)); var option = new Int32ValueGenerator.Option() { Min = min, Max = max, Steps = steps, LogBase = logBase, }; this.ValueGenerator = new Int32ValueGenerator(option); }
public void Int32ValueGenerator_should_generate_value_from_normalize(int min, int max, int step, bool logbase, int expect) { var option = new Int32ValueGenerator.Option() { Min = min, Max = max, Name = "int", Steps = step, LogBase = logbase, }; var generator = new Int32ValueGenerator(option); generator.CreateFromNormalized(1.0).RawValue.Should().Be(max); generator.CreateFromNormalized(0).RawValue.Should().Be(min); generator.CreateFromNormalized(0.5).RawValue.Should().Be(expect); }
public void Int32ValueGenerator_should_work_with_index(int min, int max, int step, bool logBase, int count) { var option = new Int32ValueGenerator.Option() { Min = min, Max = max, Steps = step, Name = "int", LogBase = logBase, }; var generator = new Int32ValueGenerator(option); generator.Count.Should().Be(count + 1); generator[0].RawValue.Should().Be(min); ((int)generator[count].RawValue) .Should() .Be(max); }