public void TransientMultipleConstructorNonValueTypeTest()
		{
			DefaultKernel container = new DefaultKernel();
			container.AddComponent("FooBar", typeof(FooBarNonValue));
			Tester1 bla1 = new Tester1("FOOBAR");
			Tester2 bla2 = new Tester2(666);

			Hashtable arguments1 = new Hashtable();
			arguments1.Add("test1", bla1);

			Hashtable arguments2 = new Hashtable();
			arguments2.Add("test2", bla2);

			object a = container.Resolve(typeof(FooBarNonValue), arguments1);
			object b = container.Resolve(typeof(FooBarNonValue), arguments2);

			Assert.AreNotSame(a, b, "A should not be B");

			// multi resolve test

			a = container.Resolve(typeof(FooBarNonValue), arguments1);
			b = container.Resolve(typeof(FooBarNonValue), arguments2);

			Assert.AreNotSame(a, b, "A should not be B");
		}
		public void TransientMultipleConstructorNonValueTypeTest()
		{
			DefaultKernel container = new DefaultKernel();
			((IKernel)container).Register(Component.For(typeof(FooBarNonValue)).Named("FooBar"));
			Tester1 bla1 = new Tester1("FOOBAR");
			Tester2 bla2 = new Tester2(666);

			var arguments1 = new Dictionary<object, object>();
			arguments1.Add("test1", bla1);

			var arguments2 = new Dictionary<object, object>();
			arguments2.Add("test2", bla2);

			object a = container.Resolve(typeof(FooBarNonValue), arguments1);
			object b = container.Resolve(typeof(FooBarNonValue), arguments2);

			Assert.AreNotSame(a, b, "A should not be B");

			// multi resolve test

			a = container.Resolve(typeof(FooBarNonValue), arguments1);
			b = container.Resolve(typeof(FooBarNonValue), arguments2);

			Assert.AreNotSame(a, b, "A should not be B");
		}
        public void TransientMultipleConstructorNonValueTypeTest()
        {
            DefaultKernel container = new DefaultKernel();

            ((IKernel)container).Register(Component.For(typeof(FooBarNonValue)).Named("FooBar"));
            Tester1 bla1 = new Tester1("FOOBAR");
            Tester2 bla2 = new Tester2(666);

            var arguments1 = new Dictionary <object, object>();

            arguments1.Add("test1", bla1);

            var arguments2 = new Dictionary <object, object>();

            arguments2.Add("test2", bla2);

            object a = container.Resolve(typeof(FooBarNonValue), arguments1);
            object b = container.Resolve(typeof(FooBarNonValue), arguments2);

            Assert.AreNotSame(a, b, "A should not be B");

            // multi resolve test

            a = container.Resolve(typeof(FooBarNonValue), arguments1);
            b = container.Resolve(typeof(FooBarNonValue), arguments2);

            Assert.AreNotSame(a, b, "A should not be B");
        }
        public void TransientMultipleConstructorNonValueTypeTest()
        {
            DefaultKernel container = new DefaultKernel();

            ((IKernel)container).Register(Component.For(typeof(AnyClassWithReference)).Named("AnyClass"));
            Tester1 one = new Tester1("AnyString");
            Tester2 two = new Tester2(1);

            var arguments1 = new Arguments();

            arguments1.Add("test1", one);

            var arguments2 = new Arguments();

            arguments2.Add("test2", two);

            object a = container.Resolve(typeof(AnyClassWithReference), arguments1);
            object b = container.Resolve(typeof(AnyClassWithReference), arguments2);

            Assert.AreNotSame(a, b, "A should not be B");

            // multi resolve test

            a = container.Resolve(typeof(AnyClassWithReference), arguments1);
            b = container.Resolve(typeof(AnyClassWithReference), arguments2);

            Assert.AreNotSame(a, b, "A should not be B");
        }
		public FooBarNonValue(Tester2 test2)
		{
		}
 public FooBarNonValue(Tester2 test2)
 {
 }
 public AnyClassWithReference(Tester2 test2)
 {
 }