public void Replace_By_Index_Calls_Cleanup()
        {
            MyCounter.Count = 0;

            var coll = new AutoCleanupObservableCollection<MyCounter>();
            for (int i = 0; i < 10; i++)
            {
                coll.Add(new MyCounter());
            }
            coll[5] = new MyCounter();
            Assert.AreEqual(1, MyCounter.Count);
        }
        public void Remove_By_Object_Calls_Cleanup()
        {
            MyCounter.Count = 0;

            var coll = new AutoCleanupObservableCollection<MyCounter>();
            for (int i = 0; i < 10; i++)
            {
                coll.Add(new MyCounter());
            }
            coll.Remove(coll[8]);
            Assert.AreEqual(1, MyCounter.Count);
        }
        public void Clear_Calls_Cleanup_On_All_Items()
        {
            MyCounter.Count = 0;

            var coll = new AutoCleanupObservableCollection<MyCounter>();
            for (int i = 0; i < 10; i++)
            {
                coll.Add(new MyCounter());
            }
            coll.Clear();

            Assert.AreEqual(10, MyCounter.Count);
        }
        public void Replace_By_Index_Calls_Cleanup()
        {
            MyCounter.Count = 0;

            var coll = new AutoCleanupObservableCollection <MyCounter>();

            for (int i = 0; i < 10; i++)
            {
                coll.Add(new MyCounter());
            }
            coll[5] = new MyCounter();
            Assert.AreEqual(1, MyCounter.Count);
        }
        public void Remove_By_Object_Calls_Cleanup()
        {
            MyCounter.Count = 0;

            var coll = new AutoCleanupObservableCollection <MyCounter>();

            for (int i = 0; i < 10; i++)
            {
                coll.Add(new MyCounter());
            }
            coll.Remove(coll[8]);
            Assert.AreEqual(1, MyCounter.Count);
        }
        public void Clear_Calls_Cleanup_On_All_Items()
        {
            MyCounter.Count = 0;

            var coll = new AutoCleanupObservableCollection <MyCounter>();

            for (int i = 0; i < 10; i++)
            {
                coll.Add(new MyCounter());
            }
            coll.Clear();

            Assert.AreEqual(10, MyCounter.Count);
        }