private static void TestTryResolveFail(Func <AnyContainerBase> factory) { AnyContainerBase container = factory(); StaticResolver.SetResolver(container); ILogger logger = StaticResolver.TryResolve <ILogger>(); Assert.IsNull(logger); }
private static void TestTransientNonGeneric(Func <AnyContainerBase> factory) { AnyContainerBase container = factory(); container.RegisterTransient(typeof(ILogger), typeof(Logger)); var instanceA = container.Resolve <ILogger>(); var instanceB = container.Resolve <ILogger>(); Assert.AreNotEqual(instanceA, instanceB); }
private static void TestSingletonGeneric(Func <AnyContainerBase> factory) { AnyContainerBase container = factory(); container.RegisterSingleton <ILogger, Logger>(); var instanceA = container.Resolve <ILogger>(); var instanceB = container.Resolve <ILogger>(); Assert.AreEqual(instanceA, instanceB); }
private static void TestTryResolveSucceed(Func <AnyContainerBase> factory) { AnyContainerBase container = factory(); container.RegisterSingleton <ILogger, Logger>(); StaticResolver.SetResolver(container); ILogger logger = StaticResolver.TryResolve <ILogger>(); Assert.IsNotNull(logger); }
private static void TestFunc(Func <AnyContainerBase> factory) { bool functionCalled = false; AnyContainerBase container = factory(); container.RegisterTransient <ILogger>(() => { functionCalled = true; return(new Logger()); }); Assert.IsFalse(functionCalled); var logger = container.Resolve <ILogger>(); Assert.IsTrue(functionCalled); Assert.IsNotNull(logger); }
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(AnyContainerBase obj) { return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.SwigCPtr); }