public void should_pass_null_as_parameter_value(ParameterValueTuner forParameter)
        {
            // --arrange
            var target = CreateTarget();

            target
            .Treat <string>()
            .AsInstance("938754");

            target
            .Treat <LevelOne>()
            .AsIs()
            .UsingParameters(forParameter.UseValue(null));

            // --act
            var actual = target.Build <LevelOne>();

            // --assert
            actual.Text.Should().BeNull();
        }
        public void should_use_value_for_parameter(ParameterValueTuner forParameter)
        {
            const string expected = "expected";

            // --arrange
            var target = CreateTarget();

            target.Treat <string>().AsInstance("bad");

            target
            .Treat <LevelOne>()
            .AsIs()
            .UsingParameters(forParameter.UseValue(expected), "bad");

            // --act
            var actual = target.Build <LevelOne>();

            // --assert
            actual.Text.Should().Be(expected);
        }