Esempio n. 1
0
        internal Parameter(float min, float max, bool logBase = false, int steps = 100)
        {
            Contract.Assert(max > min);
            Contract.Assert(steps > 0);
            Contract.Assert(!logBase || (logBase && min > 0));
            var option = new FloatValueGenerator.Option()
            {
                Min     = min,
                Max     = max,
                Steps   = steps,
                LogBase = logBase,
            };

            this.ValueGenerator = new FloatValueGenerator(option);
        }
        public void FloatValueGenerator_should_generate_value_from_normalize(float min, float max, int step, bool logbase, float expect)
        {
            var option = new FloatValueGenerator.Option()
            {
                Min     = min,
                Max     = max,
                Name    = "float",
                Steps   = step,
                LogBase = logbase,
            };

            var generator = new FloatValueGenerator(option);

            generator.CreateFromNormalized(1.0f).RawValue.Should().Be(max);
            generator.CreateFromNormalized(0f).RawValue.Should().Be(min);
            generator.CreateFromNormalized(0.5f).RawValue.Should().Be(expect);
        }
        public void FloatValueGenerator_should_work_with_index(float min, float max, int step, bool logBase, int count)
        {
            var option = new FloatValueGenerator.Option()
            {
                Min     = min,
                Max     = max,
                Steps   = step,
                Name    = "float",
                LogBase = logBase,
            };

            var generator = new FloatValueGenerator(option);

            generator.Count.Should().Be(count + 1);
            generator[0].RawValue.Should().Be(min);
            ((float)generator[count].RawValue)
            .Should()
            .Be(max);
        }