public void ClearContainer() { var ioc = new ServiceContainer(); Assert.AreEqual(3, ioc.Cast<object>().Count()); // By default only ServiceContainer is registered in 3 variants. ioc.Clear(); Assert.AreEqual(0, ioc.Cast<object>().Count()); ioc.Register(typeof(IService1), null, typeof(Service1)); Assert.AreEqual(1, ioc.Cast<object>().Count()); ioc.Clear(); Assert.AreEqual(0, ioc.Cast<object>().Count()); }
public void ClearContainer() { var ioc = new ServiceContainer(); Assert.AreEqual(3, ioc.Cast <object>().Count()); // By default only ServiceContainer is registered in 3 variants. ioc.Clear(); Assert.AreEqual(0, ioc.Cast <object>().Count()); ioc.Register(typeof(IService1), null, typeof(Service1)); Assert.AreEqual(1, ioc.Cast <object>().Count()); ioc.Clear(); Assert.AreEqual(0, ioc.Cast <object>().Count()); }
public void ShouldThrowIfDisposed() { var ioc = new ServiceContainer(); ioc.Dispose(); ioc.Clear(); }
/// <summary> /// Releases unmanaged and - optionally - managed resources /// </summary> /// <param name="disposeManagedResources"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param> protected virtual void Dispose(bool disposeManagedResources) { if (IsDisposed) { return; } IsDisposed = true; if (disposeManagedResources) { entities.Clear(); foreach (var manager in managers) { manager.Dispose(); } managers.Clear(); foreach (var service in services) { service.Dispose(); } services.Clear(); } }
public void ShouldBeDisposedOnClear() { var ioc = new ServiceContainer(); // Shared service. ioc.Register(typeof(IService1), null, typeof(DisposableService), CreationPolicy.Shared, DisposalPolicy.Automatic); var disposableService = ioc.GetInstance <IService1>() as DisposableService; Assert.IsNotNull(disposableService); Assert.IsFalse(disposableService.Disposed); ioc.Clear(); Assert.IsTrue(disposableService.Disposed); Assert.IsNull(ioc.GetInstance <IService1>()); // Single non-shared service. ioc.Register(typeof(IService1), null, typeof(DisposableService), CreationPolicy.NonShared, DisposalPolicy.Automatic); disposableService = ioc.GetInstance <IService1>() as DisposableService; Assert.IsNotNull(disposableService); Assert.IsFalse(disposableService.Disposed); ioc.Clear(); Assert.IsTrue(disposableService.Disposed); Assert.IsNull(ioc.GetInstance <IService1>()); // Multiple non-shared service. ioc.Register(typeof(IService1), null, typeof(DisposableService), CreationPolicy.NonShared, DisposalPolicy.Automatic); var disposableService0 = ioc.GetInstance <IService1>() as DisposableService; var disposableService1 = ioc.GetInstance <IService1>() as DisposableService; var disposableService2 = ioc.GetInstance <IService1>() as DisposableService; Assert.IsNotNull(disposableService0); Assert.IsNotNull(disposableService1); Assert.IsNotNull(disposableService2); Assert.AreNotSame(disposableService0, disposableService1); Assert.AreNotSame(disposableService0, disposableService2); Assert.IsFalse(disposableService0.Disposed); Assert.IsFalse(disposableService1.Disposed); Assert.IsFalse(disposableService2.Disposed); ioc.Clear(); Assert.IsTrue(disposableService0.Disposed); Assert.IsNull(ioc.GetInstance <IService1>()); }
public void SetUp() { ServiceContainer.Clear(); ServiceContainer.RegisterService <ISettingsProvider>(new SettingsProvider()); ServiceContainer.RegisterService <IWebRequestProvider>(new WebRequestProvider()); ServiceContainer.RegisterService <IAnalyticsService>(new AnalyticsService()); ServiceContainer.RegisterService <ISessionProvider>(new SessionProvider()); _webService = new NestWebService(); }
public void ShouldNotBeDisposedOnClear() { var ioc = new ServiceContainer(); ioc.Register(typeof(IService1), null, new DisposableService()); // DisposalPolicy = Manual var disposableService = ioc.GetInstance <IService1>() as DisposableService; Assert.IsNotNull(disposableService); Assert.IsFalse(disposableService.Disposed); ioc.Clear(); Assert.IsFalse(disposableService.Disposed); ioc.Register(typeof(IService1), null, typeof(DisposableService), CreationPolicy.NonShared, DisposalPolicy.Manual); disposableService = ioc.GetInstance <IService1>() as DisposableService; Assert.IsNotNull(disposableService); Assert.IsFalse(disposableService.Disposed); ioc.Clear(); Assert.IsFalse(disposableService.Disposed); }
public virtual void TearDown() { RunAsync(async delegate { // Use an empty transaction to ensure that the SQLiteDataStore has completed all scheduled jobs: await DataStore.ExecuteInTransactionAsync((ctx) => { }); }); // Make sure all of the scheduled actions have been completed while (syncContext.Run()) { } ServiceContainer.Clear(); if (databasePath != null) { File.Delete(databasePath); databasePath = null; } }
public void TearDown() { ServiceContainer.Clear(); _webService = null; }
/// <summary> /// Restores the persisted high-level SDK components values to their corresponding default properties. /// </summary> public static void Reset() { Container.Clear(); Initialize(); }
public void ShouldNotBeDisposedOnClear() { var ioc = new ServiceContainer(); ioc.Register(typeof(IService1), null, new DisposableService()); // DisposalPolicy = Manual var disposableService = ioc.GetInstance<IService1>() as DisposableService; Assert.IsNotNull(disposableService); Assert.IsFalse(disposableService.Disposed); ioc.Clear(); Assert.IsFalse(disposableService.Disposed); ioc.Register(typeof(IService1), null, typeof(DisposableService), CreationPolicy.NonShared, DisposalPolicy.Manual); disposableService = ioc.GetInstance<IService1>() as DisposableService; Assert.IsNotNull(disposableService); Assert.IsFalse(disposableService.Disposed); ioc.Clear(); Assert.IsFalse(disposableService.Disposed); }
public void ShouldBeDisposedOnClear() { var ioc = new ServiceContainer(); // Shared service. ioc.Register(typeof(IService1), null, typeof(DisposableService), CreationPolicy.Shared, DisposalPolicy.Automatic); var disposableService = ioc.GetInstance<IService1>() as DisposableService; Assert.IsNotNull(disposableService); Assert.IsFalse(disposableService.Disposed); ioc.Clear(); Assert.IsTrue(disposableService.Disposed); Assert.IsNull(ioc.GetInstance<IService1>()); // Single non-shared service. ioc.Register(typeof(IService1), null, typeof(DisposableService), CreationPolicy.NonShared, DisposalPolicy.Automatic); disposableService = ioc.GetInstance<IService1>() as DisposableService; Assert.IsNotNull(disposableService); Assert.IsFalse(disposableService.Disposed); ioc.Clear(); Assert.IsTrue(disposableService.Disposed); Assert.IsNull(ioc.GetInstance<IService1>()); // Multiple non-shared service. ioc.Register(typeof(IService1), null, typeof(DisposableService), CreationPolicy.NonShared, DisposalPolicy.Automatic); var disposableService0 = ioc.GetInstance<IService1>() as DisposableService; var disposableService1 = ioc.GetInstance<IService1>() as DisposableService; var disposableService2 = ioc.GetInstance<IService1>() as DisposableService; Assert.IsNotNull(disposableService0); Assert.IsNotNull(disposableService1); Assert.IsNotNull(disposableService2); Assert.AreNotSame(disposableService0, disposableService1); Assert.AreNotSame(disposableService0, disposableService2); Assert.IsFalse(disposableService0.Disposed); Assert.IsFalse(disposableService1.Disposed); Assert.IsFalse(disposableService2.Disposed); ioc.Clear(); Assert.IsTrue(disposableService0.Disposed); Assert.IsNull(ioc.GetInstance<IService1>()); }
public virtual void TearDown() { ServiceContainer.Clear(); }