public void ShouldRemoveContextToViewRemovedFromRegion() { var behavior = new BindRegionContextToDependencyObjectBehavior(); var region = new MockRegion(); var view = new MockDependencyObject(); region.Add(view); behavior.Region = region; region.Context = "MyContext"; behavior.Attach(); region.Remove(view); var context = RegionContext.GetObservableContext(view); Assert.IsNull(context.Value); }
public void ShouldSetRegionContextOnAlreadyAddedViews() { var behavior = new BindRegionContextToDependencyObjectBehavior(); var region = new MockRegion(); var view = new MockDependencyObject(); region.Add(view); behavior.Region = region; region.Context = "MyContext"; behavior.Attach(); var context = RegionContext.GetObservableContext(view); Assert.IsNotNull(context.Value); Assert.AreEqual("MyContext", context.Value); }
public void ViewInRegionCanBeObject() { var behavior = new BindRegionContextToDependencyObjectBehavior(); var region = new MockRegion(); behavior.Region = region; behavior.Attach(); region.Add(new object()); region.Context = "new context"; }
public void ShouldSetRegionContextOnContextChange() { var behavior = new BindRegionContextToDependencyObjectBehavior(); var region = new MockRegion(); var view = new MockDependencyObject(); region.Add(view); behavior.Region = region; region.Context = "MyContext"; behavior.Attach(); Assert.AreEqual("MyContext", RegionContext.GetObservableContext(view).Value); region.Context = "MyNewContext"; region.OnPropertyChange("Context"); Assert.AreEqual("MyNewContext", RegionContext.GetObservableContext(view).Value); }