public void SettingActiveWillAddViewsToRegion() { var regionManager = new RegionManager(); var region = new Region() { Name = "Region" }; regionManager.Regions.Add(region); var target = new ViewToRegionBinder(regionManager); target.ObjectToMonitor = new MockActiveAware(); var view = new DependencyObject(); target.Add("Region", view); Assert.AreEqual(0, region.Views.Count()); target.ObjectToMonitor.IsActive = true; Assert.AreEqual(1, region.Views.Count()); Assert.AreEqual(view, region.Views.FirstOrDefault()); target.ObjectToMonitor.IsActive = false; Assert.AreEqual(0, region.Views.Count()); }
public void RemoveInexistentViewThrows() { IRegion region = new Region(); object view = new object(); region.Remove(view); Assert.AreEqual(0, region.Views.Cast<object>().Count()); }
public void CanRemoveContentFromRegion() { IRegion region = new Region(); object view = new object(); region.Add(view); region.Remove(view); Assert.AreEqual(0, region.Views.Cast<object>().Count()); }
public void CanAddAndRetrieveNamedViewInstance() { IRegion region = new Region(); object myView = new object(); region.Add(myView, "MyView"); object returnedView = region.GetView("MyView"); Assert.IsNotNull(returnedView); Assert.AreSame(returnedView, myView); }
public void CanAddContentToRegion() { IRegion region = new Region(); Assert.AreEqual(0, region.Views.Cast<object>().Count()); region.Add(new object()); Assert.AreEqual(1, region.Views.Cast<object>().Count()); }
public void RegionExposesCollectionOfContainedViews() { IRegion region = new Region(); object view = new object(); region.Add(view); var views = region.Views; Assert.IsNotNull(views); Assert.AreEqual(1, views.Cast<object>().Count()); Assert.AreSame(view, views.Cast<object>().ElementAt(0)); }
public void RemovingViewAlsoRemovesItFromActiveViews() { IRegion region = new Region(); object model = new object(); region.Add(model); region.Activate(model); Assert.IsTrue(region.ActiveViews.Contains(model)); region.Remove(model); Assert.IsFalse(region.ActiveViews.Contains(model)); }
public void AddNamedViewWithNullOrEmptyStringNameThrows() { IRegion region = new Region(); region.Add(new object(), string.Empty); }
public void ShowViewFiresViewShowedEvent() { bool viewActivated = false; IRegion region = new Region(); object model = new object(); region.ActiveViews.CollectionChanged += (o, e) => { if (e.Action == NotifyCollectionChangedAction.Add && e.NewItems.Contains(model)) viewActivated = true; }; region.Add(model); Assert.IsFalse(viewActivated); region.Activate(model); Assert.IsTrue(viewActivated); }
public void AddingSameViewTwiceThrows() { object view = new object(); IRegion region = new Region(); region.Add(view); try { region.Add(view); Assert.Fail(); } catch (InvalidOperationException ex) { Assert.AreEqual("View already exists in region.", ex.Message); } catch { Assert.Fail(); } }
public void CreatingNewScopesAsksTheRegionManagerForNewInstance() { var regionManager = new MockRegionManager(); IRegion region = new Region(); region.RegionManager = regionManager; var myView = new object(); region.Add(myView, "MyView", true); Assert.IsTrue(regionManager.CreateRegionManagerCalled); }
public void ViewRemovedEventPassesTheViewRemovedInTheEventArgs() { object removedView = null; IRegion region = new Region(); region.Views.CollectionChanged += (sender, e) => { if (e.Action == NotifyCollectionChangedAction.Remove) removedView = e.OldItems[0]; }; object model = new object(); region.Add(model); Assert.IsNull(removedView); region.Remove(model); Assert.AreSame(model, removedView); }
public void GetViewReturnsNullAfterRemovingViewFromRegion() { IRegion region = new Region(); object myView = new object(); region.Add(myView, "MyView"); region.Remove(myView); Assert.IsNull(region.GetView("MyView")); }
public void GetViewWithNullOrEmptyStringThrows() { IRegion region = new Region(); region.GetView(string.Empty); }
public void ActivateNullViewThrows() { IRegion region = new Region(); region.Activate(null); }
public void AddViewPassesSameScopeByDefaultToNamedView() { var regionManager = new MockRegionManager(); IRegion region = new Region(); region.RegionManager = regionManager; var myView = new MockDependencyObject(); region.Add(myView, "MyView"); Assert.AreSame(regionManager, myView.GetValue(RegionManager.RegionManagerProperty)); }
public void DeactivateNonAddedViewThrows() { IRegion region = new Region(); object nonAddedView = new object(); region.Deactivate(nonAddedView); }
public void AddingNonDependencyObjectToRegionDoesNotThrow() { IRegion region = new Region(); object model = new object(); region.Add(model); Assert.AreEqual(1, region.Views.Cast<object>().Count()); }
public void AddViewReturnsNewRegionManager() { var regionManager = new MockRegionManager(); IRegion region = new Region(); region.RegionManager = regionManager; var myView = new object(); var returnedRegionManager = region.Add(myView, "MyView", true); Assert.AreNotSame(regionManager, returnedRegionManager); }
public void ShouldGetNotificationWhenContextChanges() { IRegion region = new Region(); bool contextChanged = false; region.PropertyChanged += (s, args) => { if (args.PropertyName == "Context") contextChanged = true; }; region.Context = "MyNewContext"; Assert.IsTrue(contextChanged); }
public void GetViewReturnsNullWhenViewDoesNotExistInRegion() { IRegion region = new Region(); Assert.IsNull(region.GetView("InexistentView")); }
public void ChangingNameOnceItIsSetThrows() { var region = new Region(); region.Name = "MyRegion"; region.Name = "ChangedRegionName"; }
public void RemoveViewFiresViewRemovedEvent() { bool viewRemoved = false; IRegion region = new Region(); object model = new object(); region.Views.CollectionChanged += (sender, e) => { if (e.Action == NotifyCollectionChangedAction.Remove) viewRemoved = true; }; region.Add(model); Assert.IsFalse(viewRemoved); region.Remove(model); Assert.IsTrue(viewRemoved); }
public void AddViewRaisesCollectionViewEvent() { bool viewAddedCalled = false; IRegion region = new Region(); region.Views.CollectionChanged += (sender, e) => { if (e.Action == NotifyCollectionChangedAction.Add) viewAddedCalled = true; }; object model = new object(); Assert.IsFalse(viewAddedCalled); region.Add(model); Assert.IsTrue(viewAddedCalled); }
public void AddViewPassesDiferentScopeWhenAdding() { var regionManager = new MockRegionManager(); IRegion region = new Region(); region.RegionManager = regionManager; var myView = new MockDependencyObject(); region.Add(myView, "MyView", true); Assert.AreNotSame(regionManager, myView.GetValue(RegionManager.RegionManagerProperty)); }
public void AddingDuplicateNamedViewThrows() { IRegion region = new Region(); region.Add(new object(), "MyView"); region.Add(new object(), "MyView"); }
public void ViewAddedEventPassesTheViewAddedInTheEventArgs() { object viewAdded = null; IRegion region = new Region(); region.Views.CollectionChanged += (sender, e) => { viewAdded = e.NewItems[0]; }; object model = new object(); Assert.IsNull(viewAdded); region.Add(model); Assert.IsNotNull(viewAdded); Assert.AreSame(model, viewAdded); }
private SelectorItemsSourceSyncBehavior CreateBehavior() { Region region = new Region(); #if SILVERLIGHT Selector selector = new ComboBox(); #else Selector selector = new TabControl(); #endif var behavior = new SelectorItemsSourceSyncBehavior(); behavior.HostControl = selector; behavior.Region = region; return behavior; }
public void AddNamedViewIsAlsoListedInViewsCollection() { IRegion region = new Region(); object myView = new object(); region.Add(myView, "MyView"); Assert.AreEqual(1, region.Views.Cast<object>().Count()); Assert.AreSame(myView, region.Views.Cast<object>().ElementAt(0)); }