예제 #1
0
        public void MissingOneParameterTest()
        {
            //Cannot inject Org.Apache.Reef.Tang.Test.Injection.MultiParameterConstructor, Org.Apache.Reef.Tang.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null:
            //Org.Apache.Reef.Tang.Test.Injection.MultiParameterConstructor, Org.Apache.Reef.Tang.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
            //missing argument Org.Apache.Reef.Tang.Test.Injection.MultiParameterConstructor+NamedInt, Org.Apache.Reef.Tang.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
            MultiParameterConstructor obj = null;

            try
            {
                ICsConfigurationBuilder cb = TangFactory.GetTang().NewConfigurationBuilder();
                cb.BindNamedParameter <MultiParameterConstructor.NamedBool, bool>(GenericType <MultiParameterConstructor.NamedBool> .Class, "true");
                cb.BindNamedParameter <MultiParameterConstructor.NamedString, string>(GenericType <MultiParameterConstructor.NamedString> .Class, "foo");
                IInjector i = TangFactory.GetTang().NewInjector(cb.Build());
                obj = i.GetInstance <MultiParameterConstructor>();
            }
            catch (InjectionException e)
            {
                System.Diagnostics.Debug.WriteLine(e);
            }
            Assert.IsNull(obj);
        }
예제 #2
0
        public void MissingAllParameterTest()
        {
            //Org.Apache.Reef.Tang.Test.Injection.MultiParameterConstructor, Org.Apache.Reef.Tang.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
            //missing arguments: [
            //Org.Apache.Reef.Tang.Test.Injection.MultiParameterConstructor+NamedBool, Org.Apache.Reef.Tang.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
            //Org.Apache.Reef.Tang.Test.Injection.MultiParameterConstructor+NamedString, Org.Apache.Reef.Tang.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
            //Org.Apache.Reef.Tang.Test.Injection.MultiParameterConstructor+NamedInt, Org.Apache.Reef.Tang.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
            //]
            MultiParameterConstructor obj = null;

            try
            {
                ICsConfigurationBuilder cb = TangFactory.GetTang().NewConfigurationBuilder();
                IInjector i = TangFactory.GetTang().NewInjector(cb.Build());
                obj = i.GetInstance <MultiParameterConstructor>();
            }
            catch (InjectionException e)
            {
                System.Diagnostics.Debug.WriteLine(e);
            }
            Assert.IsNull(obj);
        }