public void should_use_provided_value_for_property_by_name() { const string expected = "expectedString"; // --arrange var target = CreateTarget(); target .Treat <Subject>() .AsIs() .InjectProperty(ForProperty.Named(nameof(Subject.StringProperty)).UseValue(expected)); // --act var actual = target.Build <Subject>(); // --assert actual.Should().NotBeNull(); actual.StringProperty.Should().Be(expected); actual.InjectProperty.Should().BeNull(); }
public void should_use_argument_for_property_by_name(Func <BuildChainPatternTree, FinalTuner> tune) { const string expected = "expectedString"; const string bad = expected + "bad"; // --arrange var target = CreateTarget(); target.Treat <string>().AsInstance(bad); tune(target) .UsingArguments(ForProperty.Named(nameof(Subject.StringProperty)).UseValue(expected)); // --act var actual = target.Build <ISubject>() !; // --assert actual.Should().NotBeNull(); actual.StringProperty.Should().Be(expected); actual.InjectProperty.Should().BeNull(); }