public void TestObjectInjectWithNames() { ICsClassHierarchy classH = TangFactory.GetTang().GetDefaultClassHierarchy(); IList <INode> injected = new List <INode>(); injected.Add(classH.GetNode(typeof(TestSetInjection.Integer))); injected.Add(classH.GetNode(typeof(TestSetInjection.Float))); IConfigurationBuilder cb = TangFactory.GetTang().NewConfigurationBuilder(); cb.BindList(typeof(ListOfClasses).AssemblyQualifiedName, injected); IInjector i = TangFactory.GetTang().NewInjector(cb.Build()); i.BindVolatileInstance(GenericType <TestSetInjection.Integer> .Class, new TestSetInjection.Integer(42)); i.BindVolatileInstance(GenericType <TestSetInjection.Float> .Class, new TestSetInjection.Float(42.0001f)); IList <INumber> actual = ((PoolListClass)i.GetInstance(typeof(PoolListClass))).Numbers; Assert.True(actual.Contains(new TestSetInjection.Integer(42))); Assert.True(actual.Contains(new TestSetInjection.Float(42.0001f))); }
public void TestStringInjectConfigurationBuilder() { ICsClassHierarchy classH = TangFactory.GetTang().GetDefaultClassHierarchy(); INamedParameterNode np = (INamedParameterNode)classH.GetNode(typeof(StringList)); IList <string> injected = new List <string>(); injected.Add("hi"); injected.Add("hello"); injected.Add("bye"); IConfigurationBuilder cb = TangFactory.GetTang().NewConfigurationBuilder(); cb.BindList(np, injected); IInjector i = TangFactory.GetTang().NewInjector(cb.Build()); IList <string> actual = ((StringClass)i.GetInstance(typeof(StringClass))).StringList; Assert.True(actual.Contains("hi")); Assert.True(actual.Contains("hello")); Assert.True(actual.Contains("bye")); Assert.Equal(actual.Count, 3); }
public void TestBoolListWithNamedParameter() { ICsClassHierarchy classH = TangFactory.GetTang().GetDefaultClassHierarchy(); INamedParameterNode np = (INamedParameterNode)classH.GetNode(typeof(BoolListClass.NamedBoolList)); IList <string> injected = new List <string>(); injected.Add("true"); injected.Add("false"); injected.Add("true"); IConfigurationBuilder cb = TangFactory.GetTang().NewConfigurationBuilder(); cb.BindList(np, injected); IInjector i = TangFactory.GetTang().NewInjector(cb.Build()); BoolListClass o = i.GetInstance <BoolListClass>(); IList <bool> expected = new List <bool>(); expected.Add(true); expected.Add(false); expected.Add(true); o.Verify(expected); }
public void TestIntListWithNamedParameter() { ICsClassHierarchy classH = TangFactory.GetTang().GetDefaultClassHierarchy(); INamedParameterNode np = (INamedParameterNode)classH.GetNode(typeof(IntListClass.NamedIntList)); IList <string> injected = new List <string>(); injected.Add("1"); injected.Add("2"); injected.Add("3"); IConfigurationBuilder cb = TangFactory.GetTang().NewConfigurationBuilder(); cb.BindList(np, injected); IInjector i = TangFactory.GetTang().NewInjector(cb.Build()); IntListClass o = i.GetInstance <IntListClass>(); IList <int> expected = new List <int>(); expected.Add(1); expected.Add(2); expected.Add(3); o.Verify(expected); }
public object GetInstance(string clazz) { return(GetInstance(classHierarchy.GetNode(clazz))); }
public object GetInstance(string clazz) { CheckNamedParameter(ReflectionUtilities.GetTypeByName(clazz)); return(GetInstance(classHierarchy.GetNode(clazz))); }