public void RefreshPassesThrough()
        {
            var source1 = new SourceList <Item>();
            var source2 = new SourceList <Item>();
            var source  = new SourceList <IObservable <IChangeSet <Item> > >();
            var results = source.Or().AsAggregator();

            source1.Add(new Item("A"));
            source2.Add(new Item("B"));
            source.AddRange(new[] { source1.Connect().AutoRefresh(), source2.Connect().AutoRefresh() });

            source1.Items.ElementAt(0).Name = "Test";

            results.Data.Count.Should().Be(2);
            results.Messages.Count.Should().Be(3);
            results.Messages[2].Refreshes.Should().Be(1);
            results.Messages[2].First().Item.Current.Should().Be(source1.Items.First());
        }
Beispiel #2
0
        public void Test()
        {
            var apples  = new SourceList <Apple>();
            var bananas = new SourceList <Banana>();
            var mangos  = new SourceList <Mango>();



            var items = new SourceList <IObservable <IChangeSet <IFruit> > >();

            items.Add(apples.Cast(item => (IFruit)item));
            items.Add(bananas.Cast(item => (IFruit)item));
            items.Add(mangos.Cast(item => (IFruit)item));

            var result = items.Or().AsObservableList();

            //var fruits = ObservableList.Or<IFruit>(apples, bananas, mangos).AsObservableList();

            //// Does something similar to this exist?
            //var fruits = ObservableList.Or<IFruit>(apples, bananas, mangos).AsObservableList();
        }