Ejemplo n.º 1
0
         public virtual void Dispose2Test()
         {
             bool disposed = false;
             ITestDisposable a = null;
             using (var ioc = new Container())
             {
                 var registration = ioc.As<ITestDisposable>().Use<MockDisposableClass>(ioc); //as singleton /* AccordConatiner implements IPersunScope*/
                 registration.BeforeRelease += (sender, args) => { args.RunDispose = false; };

                 a = ioc.GetService<ITestDisposable>();
                 a.BeforeDisposeAction =
                     delegate
                     {
                         disposed = true;
                     };

                 Assert.IsTrue(ioc.IsConfiguredFor(typeof(ITestDisposable)));
             }
             Assert.IsFalse(disposed);
         }
Ejemplo n.º 2
0
        public void DisposeRegistration()
        {
            var disposed = false;
            var created = false;
            using (var ioc = new Container())
             {
                 IConfiguredFactory<MockDisposableClass> registration = ioc.As<ITestDisposable>().Use<MockDisposableClass>(ioc);
                 registration.AfterCreate += (sender, args) =>
                                                       {
                                                           
                                                           args.Component.BeforeDisposeAction =() => disposed = true;
                                                           //((AfterCreateEventArgs)args).Component = new MockDisposableClass2();
                                                       };
                 var myComponent = ioc.GetService<ITestDisposable>();
                 registration.Dispose();

                 Assert.IsTrue(disposed);
                 Assert.IsFalse(ioc.IsConfiguredFor(typeof(ITestDisposable)));
             }
        }
Ejemplo n.º 3
0
        public virtual void DisposeServiceTest()
        {
            bool disposed = false;
            using (var ioc = new Container())
            {
                ioc.As<ITestDisposable>().Use<MockDisposableClass>(ioc); //as singleton /* AccordConatiner implements IPersunScope*/
                var a = ioc.GetService<ITestDisposable>();
                a.BeforeDisposeAction = 
                    delegate 
                    { 
                        disposed = true; 
                    };

                Assert.IsTrue(ioc.IsConfiguredFor(typeof(ITestDisposable)));

                ioc.DisposeService(typeof(ITestDisposable));

                Assert.IsTrue(disposed);
                Assert.IsFalse(ioc.IsConfiguredFor(typeof(ITestDisposable)));
            }
        }