public void Complex_Linq_expressions_shall_be_supported_() { Logging.DebugLogger.EnableLogging(typeof(object), LoggingLevel.Verbose); ModelWithRows Model = new ModelWithRows(); RowThing Thing0 = new RowThing(0); RowThing Thing1 = new RowThing(1); RowThing Thing2 = new RowThing(2); Model.AddRow(Thing0); Model.AddRow(Thing1); Model.AddRow(Thing2); ThingContainer Container = new ThingContainer(Model); ThingContainerAdapter ContainerAdapter = new ThingContainerAdapter(Container); int OddCollectionChangedEventCount = 0; ((INotifyCollectionChanged)ContainerAdapter.OddThings).CollectionChanged += (sender, args) => OddCollectionChangedEventCount++; Assert.AreEqual(1, ContainerAdapter.OddThings.Count()); Assert.AreEqual(1, ContainerAdapter.OddThings.First().ID); Thing0.ID = 3; Model.InvokeRowChanged(); Assert.AreEqual(1, OddCollectionChangedEventCount); Assert.AreEqual(2, ContainerAdapter.OddThings.Count()); Assert.AreEqual(3, ContainerAdapter.OddThings.First().ID); Assert.AreEqual(1, ContainerAdapter.OddThings.ElementAt(1).ID); }
public void InvokeRowChanged() { ModelWithRows.RowsChanged(null, EventArgs.Empty); }
public void AddRow(RowThing rowThing) { this.rows.Add(rowThing); ModelWithRows.RowsChanged(this, new EventArgs()); }
public ThingContainer(ModelWithRows model) { this.model = model; ModelWithRows.RowsChanged += this.ModelWithRows_RowsChanged; }