public void FuncTests_Resolve_ParameterInjection_2Params() { var container = new StashboxContainer(); container.RegisterType <IFTest2, FTest2>(); var inst = container.Resolve <Func <ITest, IFTest1, IFTest2> >(); var t = new Test(); var t1 = new FTest1(); var r = inst(t, t1); Assert.AreSame(t, r.Test); Assert.AreSame(t1, r.Test1); }
public void FuncTests_Resolve_ParameterInjection_3Params() { var container = new StashboxContainer(); container.Register <IFTest3, FTest3>(); var inst = container.Resolve <Func <ITest, IFTest1, IFTest2, IFTest3> >(); var t = new Test(); var t1 = new FTest1(); var t2 = new FTest2(null); var r = inst(t, t1, t2); Assert.Same(t, r.Test); Assert.Same(t1, r.Test1); Assert.Same(t2, r.Test2); }