Exemple #1
0
        public void TestObjectDisposedException()
        {
            var c = new DisposableCollection();

            c.Dispose();
            c.Dispose(); // second call should have no effect

            Assert.ThrowsException <ObjectDisposedException>(() =>
                                                             c.Add(new MockDisposable()));

            Assert.ThrowsException <ObjectDisposedException>(() =>
                                                             c.Clear());

            Assert.ThrowsException <ObjectDisposedException>(() =>
                                                             c.Contains(new MockDisposable()));

            Assert.ThrowsException <ObjectDisposedException>(() =>
                                                             c.GetEnumerator());

            Assert.ThrowsException <ObjectDisposedException>(() =>
                                                             c.Remove(new MockDisposable()));
        }
 private void OnDestroy()
 {
     disposables.Clear();
 }
		public void Add_Clear_Dispose()
		{
			var collection = new DisposableCollection();

			var disposable = new Mock<IDisposable>(MockBehavior.Strict);
			disposable.Setup(_ => _.Dispose());
			collection.Add(disposable.Object);
			collection.Clear();

			collection.Dispose();
			disposable.Verify(_ => _.Dispose(), Times.Never);
			Assert.AreEqual(0, collection.Count);
		}
 public void Dispose()
 {
     disposables.Clear();
 }
		public void Dispose_Clear_Fail()
		{
			var collection = new DisposableCollection();
			collection.Dispose();
			collection.Clear();
		}