static ContentPaneFactory SetupPane(out WorkSurfaceContextViewModel workSurfaceContextViewModel, out ContentPane userControl, MessageBoxResult messageBoxResult) { var pane = new ContentPaneFactory(); var eventAggregator = new Mock <IEventAggregator>(); var workSurfaceViewModel = new Mock <ITestWorkSurfaceViewModel>(); workSurfaceViewModel.SetupGet(w => w.WorkSurfaceContext).Returns(WorkSurfaceContext.Workflow); workSurfaceViewModel.SetupGet(w => w.ResourceModel).Returns(new TestResourceModel { Authorized = true }); var localhost = new Mock <IEnvironmentModel>(); localhost.Setup(e => e.ID).Returns(Guid.Empty); localhost.Setup(e => e.IsConnected).Returns(true); var environmentRepository = new Mock <IEnvironmentRepository>(); environmentRepository.Setup(c => c.All()).Returns(new[] { localhost.Object }); environmentRepository.Setup(c => c.Source).Returns(localhost.Object); var eventPublisher = new Mock <IEventAggregator>(); var asyncWorker = AsyncWorkerTests.CreateSynchronousAsyncWorker(); var versionChecker = new Mock <IVersionChecker>(); var browserPopupController = new Mock <IBrowserPopupController>(); var savePopup = new Mock <IPopupController>(); savePopup.Setup(s => s.Show(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <MessageBoxButton>(), It.IsAny <MessageBoxImage>(), It.IsAny <string>())).Returns(messageBoxResult); var mainViewModel = new MainViewModelMock(eventPublisher.Object, asyncWorker.Object, environmentRepository.Object, versionChecker.Object, new Mock <IStudioResourceRepository>().Object, new Mock <IConnectControlSingleton>().Object, new Mock <IConnectControlViewModel>().Object, false, browserPopupController.Object) { IsBusyDownloadingInstaller = () => false, PopupProvider = savePopup.Object }; workSurfaceContextViewModel = new WorkSurfaceContextViewModel(eventAggregator.Object, new WorkSurfaceKey { EnvironmentID = Guid.NewGuid(), ResourceID = Guid.NewGuid(), ServerID = Guid.NewGuid(), WorkSurfaceContext = WorkSurfaceContext.Workflow }, workSurfaceViewModel.Object, new Mock <IPopupController>().Object, (a, b) => { }) { Parent = mainViewModel }; pane.ItemsSource = new List <WorkSurfaceContextViewModel> { workSurfaceContextViewModel }; userControl = new ContentPane { DataContext = workSurfaceContextViewModel }; return(pane); }
static ContentPaneFactory SetupPane(out WorkSurfaceContextViewModel workSurfaceContextViewModel, out ContentPane userControl, MessageBoxResult messageBoxResult) { var pane = new ContentPaneFactory(); var eventAggregator = new Mock<IEventAggregator>(); var workSurfaceViewModel = new Mock<ITestWorkSurfaceViewModel>(); workSurfaceViewModel.SetupGet(w => w.WorkSurfaceContext).Returns(WorkSurfaceContext.Workflow); workSurfaceViewModel.SetupGet(w => w.ResourceModel).Returns(new TestResourceModel { Authorized = true }); var localhost = new Mock<IEnvironmentModel>(); localhost.Setup(e => e.ID).Returns(Guid.Empty); localhost.Setup(e => e.IsConnected).Returns(true); var environmentRepository = new Mock<IEnvironmentRepository>(); environmentRepository.Setup(c => c.All()).Returns(new[] { localhost.Object }); environmentRepository.Setup(c => c.Source).Returns(localhost.Object); var eventPublisher = new Mock<IEventAggregator>(); var asyncWorker = AsyncWorkerTests.CreateSynchronousAsyncWorker(); var versionChecker = new Mock<IVersionChecker>(); var browserPopupController = new Mock<IBrowserPopupController>(); var savePopup = new Mock<IPopupController>(); savePopup.Setup(s => s.Show(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<MessageBoxButton>(), It.IsAny<MessageBoxImage>(), It.IsAny<string>())).Returns(messageBoxResult); var mainViewModel = new MainViewModelMock(eventPublisher.Object, asyncWorker.Object, environmentRepository.Object, versionChecker.Object,new Mock<IStudioResourceRepository>().Object, new Mock<IConnectControlSingleton>().Object, new Mock<IConnectControlViewModel>().Object, false, browserPopupController.Object) { IsBusyDownloadingInstaller = () => false, PopupProvider = savePopup.Object }; workSurfaceContextViewModel = new WorkSurfaceContextViewModel(eventAggregator.Object, new WorkSurfaceKey { EnvironmentID = Guid.NewGuid(), ResourceID = Guid.NewGuid(), ServerID = Guid.NewGuid(), WorkSurfaceContext = WorkSurfaceContext.Workflow }, workSurfaceViewModel.Object, new Mock<IPopupController>().Object, (a, b) => { }) { Parent = mainViewModel }; pane.ItemsSource = new List<WorkSurfaceContextViewModel> { workSurfaceContextViewModel }; userControl = new ContentPane { DataContext = workSurfaceContextViewModel }; return pane; }