public void AnyChangeInExpressionListTriggersUpdate() { var obj = new ObjChain1(); bool obsUpdated; obj.ObservableForProperty(x => x.Model.Model.Model.SomeOtherParam).Subscribe(_ => obsUpdated = true); obsUpdated = false; obj.Model.Model.Model.SomeOtherParam = 42; Assert.True(obsUpdated); obsUpdated = false; obj.Model.Model.Model = new HostTestFixture(); Assert.True(obsUpdated); obsUpdated = false; obj.Model.Model = new ObjChain3() { Model = new HostTestFixture() { SomeOtherParam = 10 } }; Assert.True(obsUpdated); obsUpdated = false; obj.Model = new ObjChain2(); Assert.True(obsUpdated); }
public void AnyChangeInExpressionListTriggersUpdate() { var obj = new ObjChain1(); bool obsUpdated; obj.ObservableForProperty(x => x.Model.Model.Model.SomeOtherParam).Subscribe(_ => obsUpdated = true); obsUpdated = false; obj.Model.Model.Model.SomeOtherParam = 42; Assert.True(obsUpdated); obsUpdated = false; obj.Model.Model.Model = new HostTestFixture(); Assert.True(obsUpdated); obsUpdated = false; obj.Model.Model = new ObjChain3() {Model = new HostTestFixture() {SomeOtherParam = 10 } } ; Assert.True(obsUpdated); obsUpdated = false; obj.Model = new ObjChain2(); Assert.True(obsUpdated); }