/// <summary> /// Configures the auto-generated types to populate the properties based on the configured container. If a type is explicitly registered, then the properties will not be automatically satisfied. /// </summary> /// <param name="builder">A <see cref="AutoSubstituteBuilder"/></param> /// <returns>The supplied <see cref="AutoSubstituteBuilder"/></returns> public static AutoSubstituteBuilder InjectProperties(this AutoSubstituteBuilder builder) => builder.ConfigureOptions(options => { options.AutoInjectProperties = true; options.MockHandlers.Add(AutoPropertyInjectorMockHandler.Instance); options.ConfigureAnyConcreteTypeRegistration.Add(r => r.PropertiesAutowired()); });
/// <summary> /// Creates a new instance that allows linking to the previous instance for derived builders. /// </summary> /// <param name="other">A <see cref="AutoSubstituteBuilder"/> that should be connected to this instance</param> private protected AutoSubstituteBuilder(AutoSubstituteBuilder other) { _substituteForRegistrations = other._substituteForRegistrations; _afterBuildActions = other._afterBuildActions; _builder = other._builder; _options = other._options; }
internal SubstituteForBuilder( AutoSubstituteBuilder builder, IRegistrationBuilder <TService, SimpleActivatorData, SingleRegistrationStyle> registration, bool isSubstituteFor) : base(builder) { _registration = registration; IsSubstituteFor = isSubstituteFor; }
public static SubstituteForBuilder2 <T> SubstituteFor2 <T>(this AutoSubstituteBuilder builder) where T : class { builder.ConfigureBuilder(b => { b.Register(_ => Substitute.For <T>()) .As <T>() .InstancePerLifetimeScope(); }); return(new SubstituteForBuilder2 <T>(builder)); }
internal SubstituteForBuilder2(AutoSubstituteBuilder builder) { _builder = builder; }
/// <summary> /// Configures the auto-generated types Autofac creates to search through internal constructors as well. If a type is explicitly registered, it will not search for internal constructors automatically. /// </summary> /// <param name="builder">A <see cref="AutoSubstituteBuilder"/></param> /// <returns>The supplied <see cref="AutoSubstituteBuilder"/></returns> public static AutoSubstituteBuilder UnregisteredTypesUseInternalConstructor(this AutoSubstituteBuilder builder) => builder.ConfigureOptions(options => { options.ConfigureAnyConcreteTypeRegistration.Add(registration => registration.FindConstructorsWith(NonPublicConstructorFinder.Finder)); });
/// <summary> /// Configures the auto-generated types Autofac creates to be the same throughout a lifetime scope. /// </summary> /// <param name="builder">A <see cref="AutoSubstituteBuilder"/></param> /// <returns>The supplied <see cref="AutoSubstituteBuilder"/></returns> public static AutoSubstituteBuilder MakeUnregisteredTypesPerLifetime(this AutoSubstituteBuilder builder) => builder.ConfigureOptions(options => { options.ConfigureAnyConcreteTypeRegistration.Add(registration => registration.InstancePerLifetimeScope()); });