public void ControllerDoesNotAddViewWhenShowDetailsIfIsAlreadyPresent() { container.RegisterType <IEmployeesDetailsPresenter, MockEmployeesDetailsPresenter>(); container.RegisterType <IProjectsListPresenter, MockProjectsListPresenter>(); var regionManager = new MockRegionManager(); var detailsRegion = new MockRegion(); regionManager.Regions.Add(RegionNames.DetailsRegion, detailsRegion); var scopedRegionManager = new MockRegionManager(); scopedRegionManager.Regions.Add(RegionNames.TabRegion, new MockRegion()); detailsRegion.AddReturnValue = scopedRegionManager; BusinessEntities.Employee employee = new BusinessEntities.Employee(10) { LastName = "Con", FirstName = "Aaron" }; EmployeesController controller = new EmployeesController(container, regionManager); Assert.AreEqual <int>(0, detailsRegion.ViewsCount); controller.OnEmployeeSelected(employee); controller.OnEmployeeSelected(employee); Assert.AreEqual <int>(1, detailsRegion.ViewsCount); Assert.IsTrue(detailsRegion.ActivateCalled); }
public void WhenRegionManagerChangesToNotNullValue_ThenChildViewsRegionManagerIsNotCleared() { var regionManager = new MockRegionManager(); var region = new Region(); region.RegionManager = regionManager; var behavior = new ClearChildViewsRegionBehavior(); behavior.Region = region; behavior.Attach(); var childView = new MockFrameworkElement(); region.Add(childView); childView.SetValue(ClearChildViewsRegionBehavior.ClearChildViewsProperty, true); Assert.AreEqual(regionManager, childView.GetValue(RegionManager.RegionManagerProperty)); region.RegionManager = new MockRegionManager(); Assert.IsNotNull(childView.GetValue(RegionManager.RegionManagerProperty)); }
public void ShowViewFiresViewShowedEvent() { bool viewActivated = false; var regionManager = new MockRegionManager(); var control = new MockControl(); IRegion region = new RegionBase(control); region.RegionManager = regionManager; IView myView = new MockView(); region.ActiveViews.CollectionChanged += (o, e) => { if (e.Action == NotifyCollectionChangedAction.Add && e.NewItems.Contains(myView)) { viewActivated = true; } }; region.Add(myView); Assert.IsFalse(viewActivated); region.Activate(myView); Assert.IsTrue(viewActivated); }
public void TestInitialize() { this.container = new MockUnityContainer(); this.regionManager = new MockRegionManager(); this.menuButtonView = new MockAssetBrowserMenuButtonView(); this.windowManager = new MockWindowManager(); }
public void RemoveViewFiresViewRemovedEvent() { bool viewRemoved = false; var regionManager = new MockRegionManager(); var control = new MockControl(); IRegion region = new RegionBase(control); region.RegionManager = regionManager; IView myView = new MockView(); region.Views.CollectionChanged += (sender, e) => { if (e.Action == NotifyCollectionChangedAction.Remove) { viewRemoved = true; } }; region.Add(myView); Assert.IsFalse(viewRemoved); region.Remove(myView); Assert.IsTrue(viewRemoved); }
public void CanRegisterDelegate() { try { var mockRegionContentRegistry = new MockRegionContentRegistry(); string regionName = null; Func <object> contentDelegate = null; Func <object> expectedDelegate = () => true; mockRegionContentRegistry.RegisterContentWithDelegate = (name, usedDelegate) => { regionName = name; contentDelegate = usedDelegate; return(null); }; ServiceLocator.SetLocatorProvider( () => new MockServiceLocator( () => mockRegionContentRegistry)); var regionManager = new MockRegionManager(); regionManager.RegisterViewWithRegion("Region1", expectedDelegate); Assert.AreEqual("Region1", regionName); Assert.AreEqual(expectedDelegate, contentDelegate); } finally { ServiceLocator.SetLocatorProvider(null); } }
public void SetUp() { regionManager = new MockRegionManager(); regionManager.Regions.Add("ActionRegion", new MockRegion()); ordersRegion = new MockRegion(); regionManager.Regions.Add("OrdersRegion", ordersRegion); }
public void ShowTheNewlyAddedViewInTheDetailsRegion() { container.RegisterType <IEmployeesDetailsPresenter, MockEmployeesDetailsPresenter>(); container.RegisterType <IProjectsListPresenter, MockProjectsListPresenter>(); var regionManager = new MockRegionManager(); var detailsRegion = new MockRegion(); regionManager.Regions.Add(RegionNames.DetailsRegion, detailsRegion); var scopedRegionManager = new MockRegionManager(); scopedRegionManager.Regions.Add(RegionNames.TabRegion, new MockRegion()); detailsRegion.AddReturnValue = scopedRegionManager; BusinessEntities.Employee employee1 = new BusinessEntities.Employee(10) { LastName = "Mock1", FirstName = "Employee1" }; EmployeesController controller = new EmployeesController(container, regionManager); controller.OnEmployeeSelected(employee1); Assert.AreEqual <int>(1, detailsRegion.ViewsCount); Assert.IsTrue(detailsRegion.ActivateCalled); }
public void ShouldCreateRegion() { try { var regionManager = new MockRegionManager(); ServiceLocator.SetLocatorProvider(() => new MockServiceLocator(() => regionManager)); FrameworkElement hostControl = new MockFrameworkElement(); RegionPopupBehaviors.RegisterNewPopupRegion(hostControl, "MyPopupRegion"); RegionPopupBehaviors.SetCreatePopupRegionWithName(hostControl, "MyPopupRegion"); Assert.AreEqual("MyPopupRegion", RegionPopupBehaviors.GetCreatePopupRegionWithName(hostControl)); var style = new Style(); RegionPopupBehaviors.SetContainerWindowStyle(hostControl, style); Assert.AreEqual(style, RegionPopupBehaviors.GetContainerWindowStyle(hostControl)); Assert.IsTrue(regionManager.MockRegions.Regions.ContainsKey("MyPopupRegion")); Assert.IsNotNull(regionManager.MockRegions.Regions["MyPopupRegion"]); Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"], typeof(SingleActiveRegion)); Assert.IsTrue(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors.ContainsKey(DialogActivationBehavior.BehaviorKey)); Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors[DialogActivationBehavior.BehaviorKey], typeof(WindowDialogActivationBehavior)); } finally { ServiceLocator.SetLocatorProvider(() => null); } }
public void RegionDoesNotGetAddedTwiceWhenUpdatingRegions() { var regionManager = new MockRegionManager(); var control = new MockFrameworkElement(); var regionScopeControl = new ContentControl(); var accessor = new MockRegionManagerAccessor { GetRegionManager = d => d == regionScopeControl ? regionManager : null }; var behavior = new RegionManagerRegistrationBehavior() { RegionManagerAccessor = accessor, Region = new MockPresentationRegion() { Name = "myRegionName" }, HostControl = control }; behavior.Attach(); Assert.IsFalse(regionManager.MockRegionCollection.AddCalled); regionScopeControl.Content = control; accessor.UpdateRegions(); Assert.IsTrue(regionManager.MockRegionCollection.AddCalled); regionManager.MockRegionCollection.AddCalled = false; accessor.UpdateRegions(); Assert.IsFalse(regionManager.MockRegionCollection.AddCalled); }
public void ShouldAddSequencesViewToProjectBrowserRegion() { var regionManager = new MockRegionManager(); var regionViewRegistry = new MockRegionViewRegistry(); var container = new MockUnityResolver(); var menuButtonView = new MockMenuButtonView(); MockTimelinePresenter timelinePresenter = new MockTimelinePresenter(); MockSequencesViewModel sequenceViewModel = new MockSequencesViewModel(); container.Bag[typeof(ITimelinePresenter)] = timelinePresenter; container.Bag[typeof(ISequencesViewModel)] = sequenceViewModel; MockTimelineMenuButtonViewModel menuViewModel = new MockTimelineMenuButtonViewModel(); menuViewModel.View = menuButtonView; container.Bag[typeof(IMenuButtonViewModel)] = menuViewModel; MockRegion mainRegion = new MockRegion { Name = "MainRegion" }; MockRegion menuRegion = new MockRegion { Name = "MenuRegion" }; regionManager.Regions.Add(mainRegion); regionManager.Regions.Add(menuRegion); var module = new TimelineModule(container, regionManager, regionViewRegistry, this.windowManager); module.Initialize(); Assert.IsInstanceOfType(regionViewRegistry.ViewsByRegion[RegionNames.ProjectBrowserRegion], typeof(ISequencesView)); }
public void CanRegisterViewType() { try { var mockRegionContentRegistry = new MockRegionContentRegistry(); string regionName = null; Type viewType = null; mockRegionContentRegistry.RegisterContentWithViewType = (name, type) => { regionName = name; viewType = type; return null; }; ServiceLocator.SetLocatorProvider( () => new MockServiceLocator { GetInstance = t => mockRegionContentRegistry }); var regionManager = new MockRegionManager(); regionManager.RegisterViewWithRegion("Region1", typeof(object)); Assert.AreEqual(regionName, "Region1"); Assert.AreEqual(viewType, typeof(object)); } finally { ServiceLocator.SetLocatorProvider(null); } }
public void ShouldCreateRegion() { try { var regionManager = new MockRegionManager(); ServiceLocator.SetLocatorProvider(() => new MockServiceLocator(() => regionManager)); FrameworkElement hostControl = new MockFrameworkElement(); RegionPopupBehaviors.RegisterNewPopupRegion(hostControl, "MyPopupRegion"); RegionPopupBehaviors.SetCreatePopupRegionWithName(hostControl, "MyPopupRegion"); Assert.AreEqual("MyPopupRegion", RegionPopupBehaviors.GetCreatePopupRegionWithName(hostControl)); var style = new Style(); RegionPopupBehaviors.SetContainerWindowStyle(hostControl, style); Assert.AreEqual(style, RegionPopupBehaviors.GetContainerWindowStyle(hostControl)); Assert.IsTrue(regionManager.MockRegions.Regions.ContainsKey("MyPopupRegion")); Assert.IsNotNull(regionManager.MockRegions.Regions["MyPopupRegion"]); Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"], typeof(SingleActiveRegion)); Assert.IsTrue(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors.ContainsKey(DialogActivationBehavior.BehaviorKey)); Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors[DialogActivationBehavior.BehaviorKey], typeof(WindowDialogActivationBehavior)); } finally { ServiceLocator.SetLocatorProvider(() => null); } }
public void ShouldActivateViewOnWatchItemAdded() { try { var mockRegionContentRegistry = new MockRegionViewRegistry(); ServiceLocator.SetLocatorProvider( () => new MockServiceLocator( () => mockRegionContentRegistry)); var watchListView = new MockWatchListView(); var regionManager = new MockRegionManager(); var region = new MockRegion(); region.Add(watchListView); regionManager.Regions.Add("MainRegion", region); var presentationModel = new MockWatchListPresentationModel { View = watchListView }; WatchListController controller = new WatchListController(regionManager, presentationModel); controller.Run(); presentationModel.WatchListItems.Add(new WatchItem("MySymbol", 10m)); Assert.IsTrue(region.ActivateCalled); Assert.AreSame(watchListView, region.ActivateArg); } finally { ServiceLocator.SetLocatorProvider(() => null); } }
public void SetUp() { this.view = new MockSettingsView(); this.projectService = new MockProjectService(); this.projectService.GetCurrentProjectReturnValue.AutoSaveInterval = 30; this.aspectRatioChangedEvent = new MockAspectRatioChangedEvent(); this.smpteTimeCodeChangedEvent = new MockSmtpeTimeCodeChangedEvent(); this.startTimeCodeChangedEvent = new MockStartTimeCodeChangedEvent(); this.editModeChangedEvent = new MockEditModeChangedEvent(); this.pickThumbnailEvent = new MockPickThumbnailEvent(); this.thumbnailEvent = new MockThumbnailEvent(); this.regionManager = new MockRegionManager(); this.toolsRegion = new MockRegion { Name = RegionNames.ToolsRegion }; this.regionManager.Regions.Add(this.toolsRegion); this.eventAggregator = new MockEventAggregator(); this.eventAggregator.AddMapping <AspectRatioChangedEvent>(this.aspectRatioChangedEvent); this.eventAggregator.AddMapping <SmpteTimeCodeChangedEvent>(this.smpteTimeCodeChangedEvent); this.eventAggregator.AddMapping <StartTimeCodeChangedEvent>(this.startTimeCodeChangedEvent); this.eventAggregator.AddMapping <EditModeChangedEvent>(this.editModeChangedEvent); this.eventAggregator.AddMapping <PickThumbnailEvent>(this.pickThumbnailEvent); this.eventAggregator.AddMapping <ThumbnailEvent>(this.thumbnailEvent); }
public void CanRegisterDelegate() { try { var mockRegionContentRegistry = new MockRegionContentRegistry(); string regionName = null; Func<object> contentDelegate = null; Func<object> expectedDelegate = () => true; mockRegionContentRegistry.RegisterContentWithDelegate = (name, usedDelegate) => { regionName = name; contentDelegate = usedDelegate; return null; }; ServiceLocator.SetLocatorProvider( () => new MockServiceLocator { GetInstance = t => mockRegionContentRegistry }); var regionManager = new MockRegionManager(); regionManager.RegisterViewWithRegion("Region1", expectedDelegate); Assert.AreEqual("Region1", regionName); Assert.AreEqual(expectedDelegate, contentDelegate); } finally { ServiceLocator.SetLocatorProvider(null); } }
public void RegionGetsRemovedFromRegionManagerWhenRemovedFromScope() { var regionManager = new MockRegionManager(); var control = new MockFrameworkElement(); var regionScopeControl = new ContentControl(); var accessor = new MockRegionManagerAccessor { GetRegionManager = d => d == regionScopeControl ? regionManager : null }; var region = new MockPresentationRegion() { Name = "myRegionName" }; var behavior = new RegionManagerRegistrationBehavior() { RegionManagerAccessor = accessor, Region = region, HostControl = control }; behavior.Attach(); regionScopeControl.Content = control; accessor.UpdateRegions(); Assert.IsTrue(regionManager.MockRegionCollection.AddCalled); Assert.AreSame(region, regionManager.MockRegionCollection.AddArgument); regionScopeControl.Content = null; accessor.UpdateRegions(); Assert.IsTrue(regionManager.MockRegionCollection.RemoveCalled); }
public void ShouldCreateRegion() { try { var regionManager = new MockRegionManager(); var windowManager = new MockWindowManager(); var dialogActivationBehavior = new DialogActivationBehavior(windowManager); ServiceLocator.SetLocatorProvider( () => new MockServiceLocator( new Tuple <Type, Func <object> >(typeof(IRegionManager), () => regionManager), new Tuple <Type, Func <object> >(typeof(DialogActivationBehavior), () => dialogActivationBehavior))); FrameworkElement hostControl = new MockFrameworkElement(); RegionWindowBehaviors.RegisterNewWindowRegion(hostControl, "MyPopupRegion"); Assert.IsTrue(regionManager.MockRegions.Regions.ContainsKey("MyPopupRegion")); Assert.IsNotNull(regionManager.MockRegions.Regions["MyPopupRegion"]); Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"], typeof(AllActiveRegion)); Assert.IsTrue(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors.ContainsKey(DialogActivationBehavior.BehaviorKey)); Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors[DialogActivationBehavior.BehaviorKey], typeof(DialogActivationBehavior)); } finally { ServiceLocator.SetLocatorProvider(() => null); } }
public void ShouldAddViewsToRegions() { var mainRegion = new MockRegion(); var menuRegion = new MockRegion(); var regionManager = new MockRegionManager(); var container = new MockUnityResolver(); var windowManager = new MockWindowManager(); container.Bag.Add(typeof(IProjectViewPresenter), new MockProjectViewPresenter()); container.Bag.Add(typeof(IMenuButtonViewModel), new MockProjectMenuButtonViewModel()); regionManager.Regions.Add("MainRegion", mainRegion); regionManager.Regions.Add("MenuRegion", menuRegion); var module = new ProjectsModule(container, regionManager, windowManager); Assert.AreEqual(0, mainRegion.AddedViews.Count); Assert.AreEqual(0, menuRegion.AddedViews.Count); module.Initialize(); Assert.AreEqual(1, mainRegion.AddedViews.Count); Assert.AreEqual(1, menuRegion.AddedViews.Count); Assert.IsInstanceOfType(mainRegion.AddedViews[0], typeof(IProjectView)); Assert.IsInstanceOfType(menuRegion.AddedViews[0], typeof(IMenuButtonView)); }
public void ShouldAddEncoderSettingsViewToMainRegion() { var regionManager = new MockRegionManager(); var container = new MockUnityResolver(); container.Bag.Add(typeof(IEncoderSettingsPresentationModel), new MockEncoderSettingsPresentationModel()); MockRegion mainRegion = new MockRegion { Name = "MainRegion" }; MockRegion menuRegion = new MockRegion { Name = "MenuRegion" }; regionManager.Regions.Add(mainRegion); regionManager.Regions.Add(menuRegion); MockOutputMenuButtonViewModel outputMenuButtonViewModel = new MockOutputMenuButtonViewModel(); container.Bag[typeof(IMenuButtonViewModel)] = outputMenuButtonViewModel; var module = new EncoderOutputModule(container, regionManager, new MockWindowManager()); Assert.AreEqual(0, mainRegion.AddedViews.Count); module.Initialize(); Assert.AreEqual(1, mainRegion.AddedViews.Count); Assert.IsInstanceOfType(mainRegion.AddedViews[0], typeof(IEncoderSettingsView)); }
public void ControllerAddsViewWhenShowDetailsIfNotPresent() { container.RegisterType <IEmployeesDetailsPresenter, MockEmployeesDetailsPresenter>(); container.RegisterType <IProjectsListPresenter, MockProjectsListPresenter>(); var regionManager = new MockRegionManager(); var detailsRegion = new MockRegion(); regionManager.Regions.Add(RegionNames.DetailsRegion, detailsRegion); var scopedRegionManager = new MockRegionManager(); scopedRegionManager.Regions.Add(RegionNames.TabRegion, new MockRegion()); detailsRegion.AddReturnValue = scopedRegionManager; BusinessEntities.Employee employee1 = new BusinessEntities.Employee(10) { LastName = "Mock1", FirstName = "Employee1" }; BusinessEntities.Employee employee2 = new BusinessEntities.Employee(11) { LastName = "Mock2", FirstName = "Employee2" }; EmployeesController controller = new EmployeesController(container, regionManager); Assert.AreEqual <int>(0, detailsRegion.ViewsCount); controller.OnEmployeeSelected(employee1); controller.OnEmployeeSelected(employee2); Assert.AreEqual <int>(2, detailsRegion.ViewsCount); }
public void BehaviorDoesNotPreventRegionManagerFromBeingGarbageCollected() { var control = new MockFrameworkElement(); var regionManager = new MockRegionManager(); var regionManagerWeakReference = new WeakReference(regionManager); var accessor = new MockRegionManagerAccessor { GetRegionName = d => "myRegionName", GetRegionManager = d => regionManager }; var behavior = new RegionManagerRegistrationBehavior() { RegionManagerAccessor = accessor, Region = new MockPresentationRegion(), HostControl = control }; behavior.Attach(); Assert.IsTrue(regionManagerWeakReference.IsAlive); GC.KeepAlive(regionManager); regionManager = null; GC.Collect(); Assert.IsFalse(regionManagerWeakReference.IsAlive); }
public void CanAttachBeforeSettingName() { var control = new ItemsControl(); var regionManager = new MockRegionManager(); var accessor = new MockRegionManagerAccessor { GetRegionManager = d => regionManager }; var region = new MockPresentationRegion() { Name = null }; var behavior = new RegionManagerRegistrationBehavior() { RegionManagerAccessor = accessor, Region = region, HostControl = control }; behavior.Attach(); Assert.IsFalse(regionManager.MockRegionCollection.AddCalled); region.Name = "myRegionName"; Assert.IsTrue(regionManager.MockRegionCollection.AddCalled); Assert.AreSame(region, regionManager.MockRegionCollection.AddArgument); }
public void ShouldAddPlayerViewToPlayerRegion() { var regionManager = new MockRegionManager(); var container = new MockUnityResolver(); var menuButtonView = new MockMenuButtonView(); container.Bag.Add(typeof(IPlayerViewPresenter), new MockPlayerViewPresenter()); MockSequencePreviewMenuButtonViewModel menuViewModel = new MockSequencePreviewMenuButtonViewModel(); menuViewModel.View = menuButtonView; container.Bag[typeof(IMenuButtonViewModel)] = menuViewModel; MockRegion mainRegion = new MockRegion { Name = "MainRegion" }; MockRegion menuRegion = new MockRegion { Name = "MenuRegion" }; regionManager.Regions.Add(mainRegion); regionManager.Regions.Add(menuRegion); var module = new PlayerModule(container, regionManager, new MockWindowManager()); Assert.AreEqual(0, mainRegion.AddedViews.Count); module.Initialize(); Assert.AreEqual(1, mainRegion.AddedViews.Count); Assert.IsInstanceOfType(mainRegion.AddedViews[0], typeof(IPlayerView)); }
public void ShouldCreateRegion() { try { var regionManager = new MockRegionManager(); ServiceLocator.SetLocatorProvider(() => new MockServiceLocator(() => regionManager)); FrameworkElement hostControl = new MockFrameworkElement(); RegionPopupBehaviors.RegisterNewPopupRegion(hostControl, "MyPopupRegion"); Assert.IsTrue(regionManager.MockRegions.Regions.ContainsKey("MyPopupRegion")); Assert.IsNotNull(regionManager.MockRegions.Regions["MyPopupRegion"]); Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"], typeof(SingleActiveRegion)); Assert.IsTrue(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors.ContainsKey(DialogActivationBehavior.BehaviorKey)); #if SILVERLIGHT Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors[DialogActivationBehavior.BehaviorKey], typeof(PopupDialogActivationBehavior)); #else Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors[DialogActivationBehavior.BehaviorKey], typeof(WindowDialogActivationBehavior)); #endif } finally { ServiceLocator.SetLocatorProvider(() => null); } }
public void WhenClearChildViewsPropertyIsTrue_ThenChildViewsRegionManagerIsCleared() { var regionManager = new MockRegionManager(); var region = new Region(); region.RegionManager = regionManager; var behavior = new ClearChildViewsRegionBehavior(); behavior.Region = region; behavior.Attach(); var childView = new MockFrameworkElement(); region.Add(childView); ClearChildViewsRegionBehavior.SetClearChildViews(childView, true); Assert.Equal(regionManager, childView.GetValue(RegionManager.RegionManagerProperty)); region.RegionManager = null; Assert.Null(childView.GetValue(RegionManager.RegionManagerProperty)); }
public void ShouldCreateRegion() { try { var regionManager = new MockRegionManager(); ServiceLocator.SetLocatorProvider(() => new MockServiceLocator(() => regionManager)); FrameworkElement hostControl = new MockFrameworkElement(); RegionPopupBehaviors.RegisterNewPopupRegion(hostControl, "MyPopupRegion"); Assert.IsTrue(regionManager.MockRegions.Regions.ContainsKey("MyPopupRegion")); Assert.IsNotNull(regionManager.MockRegions.Regions["MyPopupRegion"]); Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"], typeof(SingleActiveRegion)); Assert.IsTrue(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors.ContainsKey(DialogActivationBehavior.BehaviorKey)); #if SILVERLIGHT Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors[DialogActivationBehavior.BehaviorKey], typeof(PopupDialogActivationBehavior)); #else Assert.IsInstanceOfType(regionManager.MockRegions.Regions["MyPopupRegion"].Behaviors[DialogActivationBehavior.BehaviorKey], typeof(WindowDialogActivationBehavior)); #endif } finally { ServiceLocator.SetLocatorProvider(() => null); } }
public void StartOrderHooksInstanceCommandsToGlobalSaveAndCancelCommands() { var container = new MockUnityResolver(); var regionManager = new MockRegionManager(); var orderCompositePresenter = new MockOrderCompositePresentationModel(); container.Bag.Add(typeof(IOrdersPresentationModel), new MockOrdersPresentationModel()); container.Bag.Add(typeof(IOrderCompositePresentationModel), orderCompositePresenter); var ordersRegion = new MockRegion(); regionManager.Regions.Add("OrdersRegion", ordersRegion); regionManager.Regions.Add("MainRegion", new MockRegion()); var commandProxy = new MockStockTraderRICommandProxy(); var controller = new TestableOrdersController(regionManager, container, commandProxy, null); controller.InvokeStartOrder(TransactionType.Buy, "STOCK01"); Assert.IsFalse(orderCompositePresenter.MockSubmitCommand.ExecuteCalled); commandProxy.SubmitOrderCommand.Execute(null); Assert.IsTrue(orderCompositePresenter.MockSubmitCommand.ExecuteCalled); Assert.IsFalse(orderCompositePresenter.MockCancelCommand.ExecuteCalled); commandProxy.CancelOrderCommand.Execute(null); Assert.IsTrue(orderCompositePresenter.MockCancelCommand.ExecuteCalled); }
public void AddViewRaisesCollectionViewEvent() { bool viewAddedCalled = false; var regionManager = new MockRegionManager(); var control = new MockControl(); IRegion region = new RegionBase(control); region.RegionManager = regionManager; IView myView = new MockView(); region.Views.CollectionChanged += (sender, e) => { if (e.Action == NotifyCollectionChangedAction.Add) { viewAddedCalled = true; } }; object model = new object(); Assert.IsFalse(viewAddedCalled); region.Add(myView); Assert.IsTrue(viewAddedCalled); }
public void SubmitAllInstanceCommandHookedToGlobalSubmitAllCommands() { var container = new MockUnityResolver(); var regionManager = new MockRegionManager(); var orderCompositePresenter = new MockOrderCompositePresentationModel(); container.Bag.Add(typeof(IOrdersPresentationModel), new MockOrdersPresentationModel()); container.Bag.Add(typeof(IOrderCompositePresentationModel), orderCompositePresenter); var ordersRegion = new MockRegion(); regionManager.Regions.Add("OrdersRegion", ordersRegion); regionManager.Regions.Add("MainRegion", new MockRegion()); var commandProxy = new MockStockTraderRICommandProxy(); var accountPositionService = new MockAccountPositionService(); accountPositionService.AddPosition("STOCK01", 10.0M, 100); var controller = new TestableOrdersController(regionManager, container, commandProxy, accountPositionService); controller.InvokeStartOrder(TransactionType.Buy, "STOCK01"); Assert.IsFalse(controller.SubmitAllCommandCalled); commandProxy.SubmitAllOrdersCommand.CanExecute(null); Assert.IsTrue(controller.SubmitAllCommandCalled); }
public void ViewRemovedEventPassesTheViewRemovedInTheEventArgs() { object removedView = null; var regionManager = new MockRegionManager(); var control = new MockControl(); IRegion region = new RegionBase(control); region.RegionManager = regionManager; IView myView = new MockView(); region.Views.CollectionChanged += (sender, e) => { if (e.Action == NotifyCollectionChangedAction.Remove) { removedView = e.OldItems[0]; } }; region.Add(myView); Assert.IsNull(removedView); region.Remove(myView); Assert.AreSame(myView, removedView); }
public void CannotSellMoreSharesThatAreNOTOwned() { var container = new MockUnityResolver(); var regionManager = new MockRegionManager(); container.Bag.Add(typeof(IOrdersPresentationModel), new MockOrdersPresentationModel()); var ordersRegion = new MockRegion(); regionManager.Regions.Add("OrdersRegion", ordersRegion); regionManager.Regions.Add("MainRegion", new MockRegion()); var controller = new TestableOrdersController(regionManager, container, new MockStockTraderRICommandProxy(), new MockAccountPositionService()); var sellOrder = new MockOrderCompositePresentationModel() { Shares = 1 }; container.Bag.Add(typeof(IOrderCompositePresentationModel), sellOrder); controller.InvokeStartOrder(TransactionType.Sell, "NOTOWNED"); Assert.IsFalse(controller.SubmitAllVoteOnlyCommand.CanExecute(null)); }
public void AddingSameViewTwiceThrows() { var regionManager = new MockRegionManager(); var control = new MockControl(); IRegion region = new RegionBase(control); region.RegionManager = regionManager; IView myView = new MockView(); region.Add(myView); try { region.Add(myView); Assert.Fail(); } catch (InvalidOperationException ex) { Assert.AreEqual("View already exists in region.", ex.Message); } catch { Assert.Fail(); } }
public void CanRegisterViewType() { try { var mockRegionContentRegistry = new MockRegionContentRegistry(); string regionName = null; Type viewType = null; mockRegionContentRegistry.RegisterContentWithViewType = (name, type) => { regionName = name; viewType = type; return(null); }; ServiceLocator.SetLocatorProvider( () => new MockServiceLocator( () => mockRegionContentRegistry)); var regionManager = new MockRegionManager(); regionManager.RegisterViewWithRegion("Region1", typeof(object)); Assert.AreEqual(regionName, "Region1"); Assert.AreEqual(viewType, typeof(object)); } finally { ServiceLocator.SetLocatorProvider(null); } }
public void CanAddRegionToRegionManager() { var regionManager = new MockRegionManager(); var region = new MockRegion(); regionManager.Regions.Add("region", region); Assert.AreEqual(1, regionManager.MockRegionCollection.Count); Assert.AreEqual("region", region.Name); }
public void CanAddViewToRegion() { var regionManager = new MockRegionManager(); var view1 = new object(); var view2 = new object(); IRegion region = new MockRegion(); region.Name = "RegionName"; regionManager.Regions.Add(region); regionManager.AddToRegion("RegionName", view1); regionManager.AddToRegion("RegionName", view2); Assert.IsTrue(regionManager.Regions["RegionName"].Views.Contains(view1)); Assert.IsTrue(regionManager.Regions["RegionName"].Views.Contains(view2)); }
public void WhenClearChildViewsPropertyIsNotSet_ThenChildViewsRegionManagerIsNotCleared() { var regionManager = new MockRegionManager(); var region = new Region(); region.RegionManager = regionManager; var behavior = new ClearChildViewsRegionBehavior(); behavior.Region = region; behavior.Attach(); var childView = new MockFrameworkElement(); region.Add(childView); Assert.AreEqual(regionManager, childView.GetValue(RegionManager.RegionManagerProperty)); region.RegionManager = null; Assert.AreEqual(regionManager, childView.GetValue(RegionManager.RegionManagerProperty)); }
public async Task WhenClearChildViewsPropertyIsNotSet_ThenChildViewsRegionManagerIsNotCleared() { await ExecuteOnUIThread(() => { var regionManager = new MockRegionManager(); var region = new Region() { RegionManager = regionManager }; var behavior = new ClearChildViewsRegionBehavior() { Region = region }; behavior.Attach(); var childView = new MockFrameworkElement(); region.Add(childView); Assert.AreEqual(regionManager, childView.GetValue(RegionManager.RegionManagerProperty)); region.RegionManager = null; Assert.AreEqual(regionManager, childView.GetValue(RegionManager.RegionManagerProperty)); }); }
public void ShouldThrowIfRegionNameArgumentIsDifferentToRegionNameProperty() { var regionManager = new MockRegionManager(); var region = new MockRegion(); region.Name = "region"; Assert.ThrowsException<ArgumentException>(() => regionManager.Regions.Add("another region", region)); }
public void AddViewPassesSameScopeByDefaultToView() { var regionManager = new MockRegionManager(); IRegion region = new Region(); region.RegionManager = regionManager; var myView = new ContentControl(); region.Add(myView); Assert.AreSame(regionManager, myView.GetValue(RegionManager.RegionManagerProperty)); }
public void ShouldThrowIfRegionNameArgumentIsDifferentToRegionNameProperty() { var regionManager = new MockRegionManager(); var region = new MockRegion(); region.Name = "region"; regionManager.Regions.Add("another region", region); }
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 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 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 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)); }