protected void CreateFullExportsAndVm()
{
CreateResourceRepo();
var environmentRepo = GetEnvironmentRepository();
EventAggregator = new Mock<IEventAggregator>();
EventPublishers.Aggregator = EventAggregator.Object;
PopupController = new Mock<IPopupController>();
WebController = new Mock<IWebController>();
WindowManager = new Mock<IWindowManager>();
CustomContainer.Register(WindowManager.Object);
CustomContainer.Register(PopupController.Object);
BrowserPopupController = new Mock<IBrowserPopupController>();
MockStudioResourceRepository = new Mock<IStudioResourceRepository>();
Mock<IAsyncWorker> asyncWorker = AsyncWorkerTests.CreateSynchronousAsyncWorker();
Mock<IWorkspaceItemRepository> mockWorkspaceItemRepository = GetworkspaceItemRespository();
// ReSharper disable ObjectCreationAsStatement
new WorkspaceItemRepository(mockWorkspaceItemRepository.Object);
// ReSharper restore ObjectCreationAsStatement
Mock<IConnectControlViewModel> mockConnectControlViewModel = new Mock<IConnectControlViewModel>();
MainViewModel = new MainViewModel(EventAggregator.Object, asyncWorker.Object, environmentRepo,
new Mock<IVersionChecker>().Object, false, BrowserPopupController.Object, PopupController.Object
, WindowManager.Object, WebController.Object, MockStudioResourceRepository.Object, new Mock<IConnectControlSingleton>().Object, mockConnectControlViewModel.Object);
ActiveEnvironment = new Mock<IEnvironmentModel>();
AuthorizationService = new Mock<IAuthorizationService>();
ActiveEnvironment.Setup(e => e.AuthorizationService).Returns(AuthorizationService.Object);
MainViewModel.ActiveEnvironment = ActiveEnvironment.Object;
}