public void MatchingRuleHasTransientLifetime() { ReturnTypeMatchingRuleData ruleData = new ReturnTypeMatchingRuleData("RuleName", "System.Int32"); TypeRegistration registration = ruleData.GetRegistrations("").First(); Assert.AreEqual(TypeRegistrationLifetime.Transient, registration.Lifetime); }
/// <summary> /// Builds an instance of the subtype of IMatchingRule type the receiver knows how to build, based on /// a configuration object. /// </summary> /// <param name="context">The <see cref="IBuilderContext"/> that represents the current building process.</param> /// <param name="objectConfiguration">The configuration object that describes the object to build.</param> /// <param name="configurationSource">The source for configuration objects.</param> /// <param name="reflectionCache">The cache to use retrieving reflection information.</param> /// <returns>A fully initialized instance of the IMatchingRule subtype.</returns> public IMatchingRule Assemble(IBuilderContext context, MatchingRuleData objectConfiguration, IConfigurationSource configurationSource, ConfigurationReflectionCache reflectionCache) { ReturnTypeMatchingRuleData castedRuleData = (ReturnTypeMatchingRuleData)objectConfiguration; ReturnTypeMatchingRule matchingRule = new ReturnTypeMatchingRule(castedRuleData.Match, castedRuleData.IgnoreCase); return(matchingRule); }
public void CanSerializeTypeMatchingRule() { ReturnTypeMatchingRuleData returnTypeMatchingRule = new ReturnTypeMatchingRuleData("RuleName", "System.Int32"); returnTypeMatchingRule.IgnoreCase = true; ReturnTypeMatchingRuleData deserializedRule = SerializeAndDeserializeMatchingRule(returnTypeMatchingRule) as ReturnTypeMatchingRuleData; Assert.IsNotNull(deserializedRule); Assert.AreEqual(returnTypeMatchingRule.Name, deserializedRule.Name); Assert.IsTrue(deserializedRule.IgnoreCase); Assert.AreEqual(returnTypeMatchingRule.Match, deserializedRule.Match); }
public void MatchingRuleHasTransientLifetime() { ReturnTypeMatchingRuleData ruleData = new ReturnTypeMatchingRuleData("RuleName", "System.Int32"); using (var container = new UnityContainer()) { ruleData.ConfigureContainer(container, "-test"); var registration = container.Registrations.Single(r => r.Name == "RuleName-test"); Assert.AreSame(typeof(IMatchingRule), registration.RegisteredType); Assert.AreSame(typeof(ReturnTypeMatchingRule), registration.MappedToType); Assert.AreSame(typeof(TransientLifetimeManager), registration.LifetimeManagerType); } }