internal static MockCreationSettings GetSettings(object[] constructorArgs, Behavior?behavior, Type[] additionalMockedInterfaces, bool?mockConstructorCall, IEnumerable <CustomAttributeBuilder> additionalProxyTypeAttributes = null, List <IBehavior> supplementaryBehaviors = null, List <IBehavior> fallbackBehaviors = null, List <object> mixins = null, Expression <Predicate <MethodInfo> > interceptorFilter = null) { if (behavior == null) { behavior = DefaultBehavior; } MockCreationSettings settings = MockCreationSettings.DissectBehavior(behavior.Value, constructorArgs, mockConstructorCall); settings.AdditionalMockedInterfaces = additionalMockedInterfaces; settings.AdditionalProxyTypeAttributes = additionalProxyTypeAttributes; settings.InterceptorFilter = interceptorFilter; if (supplementaryBehaviors != null) { settings.SupplementaryBehaviors = new List <IBehavior>(settings.SupplementaryBehaviors.Concat(supplementaryBehaviors)); } if (fallbackBehaviors != null) { settings.FallbackBehaviors = new List <IBehavior>(settings.FallbackBehaviors.Concat(fallbackBehaviors)); } if (mixins != null) { settings.Mixins = new List <object>(settings.Mixins.Concat(mixins)); } return(settings); }
/// <summary> /// Creates instance <see cref="MockCreationSettings"/> for the specified behavior. /// </summary> /// <param name="behavior">Behavior for which to create the settings</param> /// <returns><see cref="MockCreationSettings"/> instance</returns> internal static MockCreationSettings GetSettings(Behavior behavior) { MockCreationSettings settings = MockCreationSettings.DissectBehavior(behavior, constructorArgs: null, mockConstructorCall: null); return(settings); }