Пример #1
0
        public void Should_Be_Disposable()
        {
            var reference = new WeakReference(_synchronizer);

            Assert.True(reference.IsAlive);

            _synchronizer.Dispose();
            _synchronizer = null;

            GC.Collect();

            Assert.False(reference.IsAlive);
        }
Пример #2
0
        public void Dispose_CollectionDoesntUpdateAnymore()
        {
            var integerList = new ObservableCollection <int>();
            var stringList  = new ObservableCollection <string>();

            var synchronizer =
                new ObservableCollectionSynchronizer <int, string>(integerList, stringList, x => x.ToString(),
                                                                   x => x.ToString());

            integerList.Add(1);
            integerList.Add(3);

            synchronizer.Dispose();

            integerList.Add(6);
            integerList.Add(7);

            Assert.Equal(2, stringList.Count);
            Assert.Equal("1", stringList.First());
            Assert.Equal("3", stringList.Last());
        }