public void adding_an_item_updates_the_range()
{
var model = new DoubleCollectionModel();
var observer = model.CreateObserver();
model.Add(1d);
Assert.Equal(0d, model.Range);
model.Add(10d);
Assert.Equal(9d, model.Range);
Assert.Equal(2, observer.GetChangeCount(x => x.Range));
model = new DoubleCollectionModel();
observer = model.CreateObserver();
model.Add(-20);
Assert.Equal(0d, model.Range);
model.Add(-10);
Assert.Equal(10d, model.Range);
model.Add(0d);
Assert.Equal(20d, model.Range);
model.Add(10d);
Assert.Equal(30d, model.Range);
Assert.Equal(4, observer.GetChangeCount(x => x.Range));
}