public void OverridesDoNotApplyOnDifferentNamedTypeRegistered() { // Load the container details from the config file. IUnityContainer container = ConfigurationFixtureBase.GetContainer(@"ConfigFiles\PropertyOverride.config", "PropertyOverrideContainer"); // Resolve using the type mentioned in the config files. var defaultConfigResult = container.Resolve <TestTypeInConfig>("MyTestTypeToOverride"); // The default values in the config files should be present. Assert.AreEqual <int>(101, defaultConfigResult.Value); Assert.AreEqual <int>(-111, defaultConfigResult.X); Assert.AreEqual <string>("DefaultFromConfigFile", defaultConfigResult.Y); // Create the PropertyOverrides object. PropertyOverrides overrides = new PropertyOverrides(); overrides.Add("X", 9999); overrides.Add("Y", "Overridden"); // Resolve using the wrong type(only construction injection info available, no property injection info) mentioned in the config files. // Override is ignored. var overriddenResult = container.Resolve <TestTypeInConfig>("DefaultConstructor", overrides); // The default values in the config files should be retained. Assert.AreEqual <int>(1001, overriddenResult.Value); Assert.AreEqual <int>(0, overriddenResult.X); Assert.AreEqual <string>(null, overriddenResult.Y); }
public void ConfigurationUnityTest() { IUnityContainer container = ConfigurationFixtureBase.GetContainer(@"ConfigFiles\ContainerRegisterFixture.config", "containerOne"); Temp objTemp = container.Resolve <Temp>("MyInstance1"); Temp objTemp1 = container.Resolve <Temp>("MyInstance2"); Assert.IsInstanceOfType(objTemp, typeof(Temp)); }
public void TypeBasedOverrideWithConstructorDefaultFromConfig() { ParameterOverride overrideParam = new ParameterOverride("value", 222); TypeBasedOverride overrideDecorator = new TypeBasedOverride(typeof(TypeToInject2ForTypeOverride), overrideParam); IUnityContainer container = ConfigurationFixtureBase.GetContainer(@"ConfigFiles\TypeOverride.config", "TypeOverrideContainer"); var defaultResult = container.Resolve <TypeToUndergoeTypeBasedInject1>("TestTypeOverrideDefaultInConfiguration"); var overrideResult = container.Resolve <TypeToUndergoeTypeBasedInject1>("TestTypeOverrideDefaultInConfiguration", overrideDecorator); Assert.AreEqual <int>(101, defaultResult.IForTypeToInject.Value); Assert.AreEqual <int>(222, overrideResult.IForTypeToInject.Value); }
public void PropertyOverrideWithDefaultInConfig() { TestTypeInConfig overrideObject = new TestTypeInConfig(666); IUnityContainer container = ConfigurationFixtureBase.GetContainer(@"ConfigFiles\PropertyOverride.config", "PropertyOverrideContainer"); var defaultResult = container.Resolve <TestTypeInConfig>("MyTestTypeToOverride"); PropertyOverrides overrides = new PropertyOverrides(); overrides.Add("X", 9999); overrides.Add("Y", "Overridden"); var overriddenResult = container.Resolve <TestTypeInConfig>("MyTestTypeToOverride", overrides); Assert.AreEqual <int>(101, defaultResult.Value); Assert.AreEqual <int>(-111, defaultResult.X); Assert.AreEqual <string>("DefaultFromConfigFile", defaultResult.Y); Assert.AreEqual <int>(101, overriddenResult.Value); Assert.AreEqual <int>(9999, overriddenResult.X); Assert.AreEqual <string>("Overridden", overriddenResult.Y); }