public static void SetUp() { var container = new DryIocAnyContainer(); container.RegisterSingleton <IDriveService, DriveService>(); container.RegisterSingleton <IAppThemeService, AppThemeService>(); if (Utilities.IsRunningAsAppx) { container.RegisterSingleton <IToastNotificationService, ToastNotificationService>(); } else { container.RegisterSingleton <IToastNotificationService, StubToastNotificationService>(); } container.RegisterSingleton <IUpdater, Updater>(); container.RegisterSingleton <IMessageBoxService, MessageBoxService>(); container.RegisterSingleton <IFileService, FileService>(); container.RegisterSingleton <IPresetImportExport, PresetImportExport>(); container.RegisterSingleton <IQueueImportExport, QueueImportExport>(); container.RegisterSingleton <IProcesses, Processes>(); container.RegisterSingleton <IProcessAutoPause, ProcessAutoPause>(); container.RegisterSingleton <ISystemOperations, SystemOperations>(); container.RegisterSingleton <IWindowManager, WindowManager>(); container.RegisterSingleton <IAppLogger>(() => { var allAppLogger = container.Resolve <AllAppLogger>(); if (CustomConfig.UseWorkerProcess) { return(new GeneralAppLogger(allAppLogger)); } else { return(allAppLogger); } }); container.RegisterSingleton <ILogger>(() => { return(container.Resolve <IAppLogger>()); }); container.RegisterSingleton <OutputPathService>(); container.RegisterSingleton <OutputSizeService>(); container.RegisterSingleton <PresetsService>(); container.RegisterSingleton <PickersService>(); container.RegisterSingleton <ProcessingService>(); container.RegisterSingleton <SubtitlesService>(); container.RegisterSingleton <StatusService>(); container.RegisterSingleton <PreviewUpdateService>(); container.RegisterSingleton <PreviewImageService>(); container.RegisterSingleton <ClipboardService>(); container.RegisterSingleton <TrayService>(); container.RegisterSingleton <AppLoggerFactory>(); container.RegisterSingleton <LogCoordinator>(); container.RegisterSingleton <AllAppLogger>(); container.RegisterSingleton <PastebinService>(); container.RegisterSingleton <EncodingWindowViewModel>(); container.RegisterTransient <PreviewWindowViewModel>(); container.RegisterTransient <PickerWindowViewModel>(); container.RegisterTransient <OptionsDialogViewModel>(); container.RegisterTransient <LogWindowViewModel>(); container.RegisterTransient <QueueTitlesWindowViewModel>(); container.RegisterTransient <EncodeDetailsWindowViewModel>(); StaticResolver.SetResolver(container); Container = container; }