public void TestMultiLayersWithNoInjectableDefaultConstructor() { TangImpl.Reset(); ICsConfigurationBuilder cb = TangFactory.GetTang().NewConfigurationBuilder(); cb.BindImplementation(typeof(IH), typeof(L1)); IInjector i = TangFactory.GetTang().NewInjector(cb.Build()); var o = i.GetInstance <IH>(); Assert.NotNull(o); ICsConfigurationBuilder cb2 = TangFactory.GetTang().NewConfigurationBuilder(); cb2.BindImplementation(typeof(IH), typeof(M1)); // M1 doesn't have injectable default constructor, no implementation L1 is bound to M1 IInjector i2 = TangFactory.GetTang().NewInjector(cb2.Build()); string msg = null; try { var o2 = i2.GetInstance <IH>(); Assert.True(o2 is L1); } catch (Exception e) { // Cannot inject Org.Apache.REEF.Tang.Tests.Injection.IH, Org.Apache.REEF.Tang.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null: // No known implementations / injectable constructors for Org.Apache.REEF.Tang.Tests.Injection.M1, Org.Apache.REEF.Tang.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null msg = e.Message; } Assert.NotNull(msg); }
public TestClassHierarchy() { if (ns == null) { TangImpl.Reset(); ns = TangFactory.GetTang().GetClassHierarchy(new string[] { FileNames.Examples, FileNames.Common, FileNames.Tasks }); } }
private void setup3() { TangImpl.Reset(); try { ProtocolBufferClassHierarchy.Serialize("testProto.bin", ns); ns = ProtocolBufferClassHierarchy.DeSerialize("testProto.bin"); } catch (IOException e) { Assert.Fail(string.Format(CultureInfo.CurrentCulture, "IOException when serialize/deserialize proto buffer file", e)); } }
public void TestMultiLayersWithLowerLayerFirst() { TangImpl.Reset(); ICsConfigurationBuilder cb = TangFactory.GetTang().NewConfigurationBuilder(); cb.BindImplementation(typeof(IH), typeof(L)); IInjector i = TangFactory.GetTang().NewInjector(cb.Build()); var o = i.GetInstance <IH>(); Assert.True(o is L); ICsConfigurationBuilder cb2 = TangFactory.GetTang().NewConfigurationBuilder(); cb2.BindImplementation(typeof(IH), typeof(M)); IInjector i2 = TangFactory.GetTang().NewInjector(cb2.Build()); var o2 = i2.GetInstance <IH>(); Assert.True(o2 is M); }
public void TestMultiLayersWithBindImpl() { TangImpl.Reset(); ICsConfigurationBuilder cb = TangFactory.GetTang().NewConfigurationBuilder(); cb.BindImplementation(typeof(IH), typeof(L)); IInjector i = TangFactory.GetTang().NewInjector(cb.Build()); var o = i.GetInstance <IH>(); Assert.IsTrue(o is L); ICsConfigurationBuilder cb2 = TangFactory.GetTang().NewConfigurationBuilder(); cb2.BindImplementation(typeof(IH), typeof(M)); cb2.BindImplementation(typeof(M), typeof(L)); //construcotr of L is explicitly bound IInjector i2 = TangFactory.GetTang().NewInjector(cb2.Build()); var o2 = i2.GetInstance <IH>(); Assert.IsTrue(o2 is L); }
public static void ClassSetup(TestContext context) { TangImpl.Reset(); }
private void setup2() { TangImpl.Reset(); ns = new ProtocolBufferClassHierarchy(ProtocolBufferClassHierarchy.Serialize(ns)); }
private void setup1() { TangImpl.Reset(); ns = TangFactory.GetTang().GetClassHierarchy(new string[] { FileNames.Examples, FileNames.Common, FileNames.Tasks }); }
public TestGeneric() { TangImpl.Reset(); }
public static void ClassSetup(TestContext context) { TangImpl.Reset(); ns = TangFactory.GetTang().GetClassHierarchy(new string[] { FileNames.Examples, FileNames.Common, FileNames.Tasks }); }