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);
        }
        public void ConfigurationIsInvalid7()
        {
            UnityConfigurationSection section = ConfigurationFixtureBase.GetUnitySection(@"ConfigFiles\GenericParameterConfigurationTestsInvalid7.config");

            Assert.IsNotNull(section);
        }