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 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 SetUp() { regionManager = new MockRegionManager(); regionManager.Regions.Add("ActionRegion", new MockRegion()); ordersRegion = new MockRegion(); regionManager.Regions.Add("OrdersRegion", ordersRegion); }
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 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 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 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 ShouldCreateDifferentWindowsForEachView() { var view = new UserControl(); var view2 = new UserControl(); var region = new MockRegion(); var behavior = new TestableDialogActivationBehavior(this.windowManager); var parentCanvas = new Canvas(); behavior.HostControl = parentCanvas; behavior.Region = region; behavior.Attach(); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view2); Assert.AreEqual(2, behavior.ViewMappings.Count); var windowForView = behavior.ViewMappings.ElementAt(0).Value; var windowForView2 = behavior.ViewMappings.ElementAt(1).Value; Assert.AreNotSame(windowForView, windowForView2); Assert.IsTrue(((MockWindow)windowForView).ShowCalled); Assert.IsTrue(((MockWindow)windowForView2).ShowCalled); }
public void ShouldSetLeftPositionToPointFiftyFiveOfWidthWhenValueProvidedByWindowInfoProviderInViewDataContextIsRight() { var view = new UserControl(); var viewModel = new MockWindowMetadataProvider(); view.DataContext = viewModel; var region = new MockRegion(); var behavior = new TestableDialogActivationBehavior(this.windowManager); var parentCanvas = new Canvas { Width = 300 }; viewModel.Horizontal = HorizontalWindowPosition.Right; behavior.HostControl = parentCanvas; behavior.Region = region; behavior.Attach(); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view); var windowForView = behavior.ViewMappings.ElementAt(0).Value; Assert.AreEqual(165, windowForView.Left); }
public void ShouldAddNotificationViewToNotificationsRegion() { var toolsRegion = new MockRegion(); var regionManager = new MockRegionManager(); var container = new MockUnityContainer(); var configurationService = new MockConfigurationService(); container.Bag.Add(typeof(INotificationViewPresenter), new MockNotificationViewPresenter()); container.Bag.Add(typeof(IProjectService), new MockProjectService()); container.Bag.Add(typeof(ICacheManager), new MockCacheManager()); container.Bag.Add(typeof(IConfigurationService), configurationService); toolsRegion.Name = RegionNames.NotificationsRegion; regionManager.Regions.Add(toolsRegion); configurationService.GetParameterValueReturnFunction = p => "polling"; var module = new ServicesModule(container, regionManager); Assert.AreEqual(0, toolsRegion.AddedViews.Count); module.Initialize(); Assert.AreEqual(1, toolsRegion.AddedViews.Count); Assert.IsInstanceOfType(toolsRegion.AddedViews[0], typeof(INotificationView)); }
public void InitRegistersOrdersToolbarViewToToolbarRegion() { try { MockRegion toolbarRegion = new MockRegion(); MockRegion mainRegion = new MockRegion(); MockRegionManager regionManager = new MockRegionManager(); var container = new MockUnityResolver(); container.Bag.Add(typeof(IOrdersController), new MockOrdersController()); container.Bag.Add(typeof(IPositionSummaryPresentationModel), new MockPositionSummaryPresenter()); var contentRegistry = new MockRegionViewRegistry(); ServiceLocator.SetLocatorProvider( () => new MockServiceLocator( () => contentRegistry)); PositionModule module = new PositionModule(container, regionManager); regionManager.Regions.Add("MainRegion", mainRegion); regionManager.Regions.Add("CollapsibleRegion", new MockRegion()); Assert.AreEqual(0, contentRegistry.RegisterViewWithRegionRegionNameArg.Count); module.Initialize(); Assert.AreEqual(2, contentRegistry.RegisterViewWithRegionRegionNameArg.Count); Assert.IsTrue(contentRegistry.RegisterViewWithRegionRegionNameArg.Contains("ResearchRegion")); Assert.IsTrue(contentRegistry.RegisterViewWithRegionRegionNameArg.Contains("MainRegion")); } finally { ServiceLocator.SetLocatorProvider(null); } }
public void ShouldAddSubClipViewToMainRegion() { var module = this.CreateModule(this.unityContainer); ISubClipViewModel viewModel = new MockSubClipViewModel(); this.unityContainer.Bag[typeof(ISubClipViewModel)] = viewModel; MockSubClipMenuButtonViewModel menuViewModel = new MockSubClipMenuButtonViewModel(); this.unityContainer.Bag[typeof(IMenuButtonViewModel)] = menuViewModel; MockRegion mainRegion = new MockRegion { Name = "MainRegion" }; MockRegion menuRegion = new MockRegion { Name = "MenuRegion" }; this.regionManager.Regions.Add(mainRegion); this.regionManager.Regions.Add(menuRegion); Assert.AreEqual(0, mainRegion.AddedViews.Count()); module.Initialize(); Assert.AreEqual(1, mainRegion.AddedViews.Count()); Assert.IsInstanceOfType(mainRegion.AddedViews.First(), typeof(ISubClipView)); Assert.AreSame(viewModel.View, mainRegion.AddedViews.First()); }
public void ShouldRegisterMappingsInContainer() { var module = this.CreateModule(this.unityContainer); Assert.AreEqual(0, this.unityContainer.Types.Count); MockRegion mainRegion = new MockRegion { Name = "MainRegion" }; MockRegion menuRegion = new MockRegion { Name = "MenuRegion" }; this.regionManager.Regions.Add(mainRegion); this.regionManager.Regions.Add(menuRegion); this.unityContainer.Bag[typeof(ISubClipViewModel)] = new MockSubClipViewModel(); this.unityContainer.Bag[typeof(IMenuButtonViewModel)] = new MockSubClipMenuButtonViewModel(); module.Initialize(); Assert.AreEqual(2, this.unityContainer.Types.Count); Assert.AreEqual(typeof(SubClipView), this.unityContainer.Types[typeof(ISubClipView)]); Assert.AreEqual(typeof(SubClipViewModel), this.unityContainer.Types[typeof(ISubClipViewModel)]); }
public void ShouldAddSubClipMenuButtonViewToMenuRegion() { var module = this.CreateModule(this.unityContainer); ISubClipViewModel viewModel = new MockSubClipViewModel(); this.unityContainer.Bag[typeof(ISubClipViewModel)] = viewModel; MockSubClipMenuButtonViewModel menuViewModel = new MockSubClipMenuButtonViewModel(); menuViewModel.View = this.menuButtonView; this.unityContainer.Bag[typeof(IMenuButtonViewModel)] = menuViewModel; MockRegion mainRegion = new MockRegion { Name = "MainRegion" }; MockRegion menuRegion = new MockRegion { Name = "MenuRegion" }; this.regionManager.Regions.Add(mainRegion); this.regionManager.Regions.Add(menuRegion); Assert.AreEqual(0, menuRegion.AddedViews.Count); module.Initialize(); Assert.AreSame(viewModel.View, menuViewModel.ViewToDisplay); Assert.IsTrue(menuViewModel.IsViewActive); Assert.AreEqual(1, menuRegion.AddedViews.Count); Assert.IsNotNull(menuViewModel.View); Assert.AreSame(menuViewModel.View, menuRegion.AddedViews[0]); Assert.AreEqual("Sub-Clip", menuViewModel.Text); }
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 ShouldSetTopPositionToHalfOfHeightWhenValueProvidedByWindowInfoProviderInViewDataContextIsBottom() { var view = new UserControl(); var viewModel = new MockWindowMetadataProvider(); view.DataContext = viewModel; var region = new MockRegion(); var behavior = new TestableDialogActivationBehavior(this.windowManager); var parentCanvas = new Canvas(); parentCanvas.Height = 300; viewModel.Vertical = VerticalWindowPosition.Bottom; behavior.HostControl = parentCanvas; behavior.Region = region; behavior.Attach(); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view); var windowForView = behavior.ViewMappings.ElementAt(0).Value; Assert.AreEqual(150, windowForView.Top); }
public void SetUp() { this.playerEvent = new MockPlayerEvent(); this.view = new MockLibraryView(); this.regionManager = new MockRegionManager(); this.configurationService = new MockConfigurationService(); this.addAssetEvent = new MockAddAssetEvent(); this.assetsAvailableEvent = new MockAssetsAvailableEvent(); this.showMetadataEvent = new MockShowMetadataEvent(); this.resetWindowsEvent = new MockResetWindowsEvent(); this.assetsLoadingEvent = new MockAssetsLoadingEvent(); this.mainRegion = new MockRegion(); this.errorView = new MockErrorView(); this.mainRegion.Name = RegionNames.MainRegion; this.regionManager.Regions.Add(this.mainRegion); this.eventAggregator = new MockEventAggregator(); this.eventAggregator.AddMapping <AddAssetEvent>(this.addAssetEvent); this.eventAggregator.AddMapping <PlayerEvent>(this.playerEvent); this.eventAggregator.AddMapping <ShowMetadataEvent>(this.showMetadataEvent); this.eventAggregator.AddMapping <AssetsAvailableEvent>(this.assetsAvailableEvent); this.eventAggregator.AddMapping <ResetWindowsEvent>(this.resetWindowsEvent); this.eventAggregator.AddMapping <AssetsLoadingEvent>(this.assetsLoadingEvent); }
public void ShouldSetWindowSizeBasedOnWindowInfoProvider() { var view = new UserControl(); var viewModel = new MockWindowMetadataProvider(); view.DataContext = viewModel; var region = new MockRegion(); var behavior = new TestableDialogActivationBehavior(this.windowManager); var parentCanvas = new Canvas(); viewModel.SizeForWindow = new Size(10, 20); behavior.HostControl = parentCanvas; behavior.Region = region; behavior.Attach(); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view); var windowForView = behavior.ViewMappings.ElementAt(0).Value; Assert.AreEqual(20, windowForView.Size.Height); Assert.AreEqual(10, windowForView.Size.Width); }
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 ShouldUpdateTitleWhenTitlePropertyChanges() { var view = new UserControl(); var viewModel = new MockWindowMetadataProvider(); viewModel.TitleForWindow = "Window Title"; view.DataContext = viewModel; var region = new MockRegion(); var behavior = new TestableDialogActivationBehavior(this.windowManager); var parentCanvas = new Canvas(); behavior.HostControl = parentCanvas; behavior.Region = region; behavior.Attach(); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view); var windowForView = behavior.ViewMappings.ElementAt(0).Value; Assert.AreEqual("Window Title", windowForView.Title); viewModel.TitleForWindow = "Different Window Title"; viewModel.InvokeTitleUpdated(view); Assert.AreEqual("Different Window Title", windowForView.Title); }
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 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 MockRegion() { 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 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 CanAttachBeforeSettingName() { var control = new ItemsControl(); var regionManager = new MockRegionManager(); var accessor = new MockRegionManagerAccessor { GetRegionManager = d => regionManager }; var region = new MockRegion() { 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 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 SetUp() { this.view = new MockSettingsView(); this.projectService = new MockProjectService(); this.configurationService = new MockConfigurationService(); 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.resetWindowsEvent = new MockResetWindowsEvent(); this.thumbnailEvent = new MockThumbnailEvent(); this.regionManager = new MockRegionManager(); this.mainRegion = new MockRegion { Name = RegionNames.MainRegion }; this.userSettingsService = new MockUserSettingsService(); this.persistenceService = new MockPersistenceService(); this.regionManager.Regions.Add(this.mainRegion); 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); this.eventAggregator.AddMapping <ResetWindowsEvent>(this.resetWindowsEvent); }
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 CanAttachBeforeSettingName() { var region = new MockRegion() { Name = null }; var viewFactory = new MockRegionContentRegistry(); var view = new object(); viewFactory.GetContentsReturnValue.Add(view); var behavior = new AutoPopulateRegionBehavior(viewFactory) { Region = region }; behavior.Attach(); Assert.IsFalse(viewFactory.GetContentsCalled); region.Name = "MyRegion"; Assert.IsTrue(viewFactory.GetContentsCalled); Assert.AreEqual("MyRegion", viewFactory.GetContentsArgumentRegionName); Assert.AreEqual(1, region.MockViews.Items.Count); Assert.AreEqual(view, region.MockViews.Items[0]); }
public void WhenRemovingRegions_ThenRegionsCollectionNotifiesUpdate() { var regionManager = new RegionManager(CreateMockRegionBehaviorFactory()); var region1 = new MockRegion { Name = "region1" }; var region2 = new MockRegion { Name = "region2" }; regionManager.Regions.Add(region1); regionManager.Regions.Add(region2); NotifyCollectionChangedEventArgs args = null; regionManager.Regions.CollectionChanged += (s, e) => args = e; regionManager.Regions.Remove("region2"); Assert.AreEqual(NotifyCollectionChangedAction.Remove, args.Action); CollectionAssert.AreEqual(new object[] { region2 }, args.OldItems); Assert.AreEqual(0, args.OldStartingIndex); Assert.IsNull(args.NewItems); Assert.AreEqual(-1, args.NewStartingIndex); regionManager.Regions.Remove("region1"); Assert.AreEqual(NotifyCollectionChangedAction.Remove, args.Action); CollectionAssert.AreEqual(new object[] { region1 }, args.OldItems); Assert.AreEqual(0, args.OldStartingIndex); Assert.IsNull(args.NewItems); Assert.AreEqual(-1, args.NewStartingIndex); }
public void ShouldThrowIfRegionNameArgumentIsDifferentToRegionNameProperty() { var regionManager = new RegionManager(); var region = new MockRegion(); region.Name = "region"; regionManager.Regions.Add("another region", region); }
public void ShouldDeactivateViewWhenClosed() { var view = new UserControl(); var region = new MockRegion(); var behavior = new TestableDialogActivationBehavior(); behavior.HostControl = new MockDependencyObject(); behavior.Region = region; behavior.Attach(); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view); behavior.CreatedWindow.InvokeClosed(); Assert.IsTrue(region.DeactivateCalled); }
public void ShouldAlwaysShowOnlyLastActiveView() { var region = new MockRegion(); var behavior = new TestableDialogActivationBehavior(); behavior.HostControl = new MockDependencyObject(); behavior.Region = region; behavior.Attach(); var view1 = new UserControl(); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view1); Assert.AreSame(view1, behavior.CreatedWindow.Content); var view2 = new UserControl(); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view2); Assert.AreSame(view2, behavior.CreatedWindow.Content); }
public void ShouldCreateWindowOnViewActivation() { var parentWindow = new MockDependencyObject(); var region = new MockRegion(); var view = new UserControl(); var behavior = new TestableDialogActivationBehavior(); behavior.HostControl = parentWindow; behavior.Region = region; behavior.Attach(); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view); Assert.IsNotNull(behavior.CreatedWindow); Assert.IsTrue(behavior.CreatedWindow.ShowCalled); Assert.AreSame(view, behavior.CreatedWindow.Content); Assert.AreSame(parentWindow, behavior.CreatedWindow.Owner); }
public void ShouldSetStyleToRegionWindow() { var parentWindow = new MockDependencyObject(); var region = new MockRegion(); var behavior = new TestableDialogActivationBehavior(); behavior.HostControl = parentWindow; behavior.Region = region; var regionStyle = new Style(); parentWindow.SetValue(RegionPopupBehaviors.ContainerWindowStyleProperty, regionStyle); behavior.Attach(); var view = new UserControl(); region.MockActiveViews.TriggerNotifyCollectionChangedEvent(NotifyCollectionChangedAction.Add, view); Assert.AreEqual(regionStyle, behavior.CreatedWindow.Style); }