private ApplicationSettingsViewModel BuildViewModel() { // TODO extend tests based on Edition var licenseChecker = Substitute.For <ILicenseChecker>(); var offlineActivator = Substitute.For <IOfflineActivator>(); var printerHelper = Substitute.For <IPrinterHelper>(); printerHelper.GetApplicablePDFCreatorPrinter(Arg.Any <string>(), Arg.Any <string>()).Returns("PDFCreator"); var settingsHelper = Substitute.For <ISettingsProvider>(); var settingsManager = Substitute.For <ISettingsManager>(); settingsManager.GetSettingsProvider().Returns(settingsHelper); var updateAssistant = Substitute.For <IUpdateAssistant>(); var uacAssistant = Substitute.For <IUacAssistant>(); var process = Substitute.For <IProcessStarter>(); var generalTabViewModel = new GeneralTabViewModel(Substitute.For <ILanguageProvider>(), null, updateAssistant, uacAssistant, Substitute.For <IInteractionInvoker>(), Substitute.For <IOsHelper>(), Substitute.For <IProcessStarter>(), new GeneralTabTranslation()); var printerTabViewModel = new PrinterTabViewModel(printerHelper, null, null, null, printerHelper, new PrinterTabTranslation()); var titleTabViewModel = new TitleTabViewModel(new TitleTabTranslation(), new TranslationFactory()); var debugTabViewModel = new DebugTabViewModel(settingsManager, Substitute.For <ITestPageHelper>(), Substitute.For <IFile>(), Substitute.For <IProcessStarter>(), Substitute.For <IInteractionInvoker>(), printerHelper, Substitute.For <IIniSettingsAssistant>(), new DebugTabTranslation()); var licenseTabViewModel = new LicenseTabViewModel(process, licenseChecker, offlineActivator, null, Substitute.For <IDispatcher>(), new LicenseTabTranslation()); var pdfArchitectTabViewModel = new PdfArchitectTabViewModel(Substitute.For <IPdfArchitectCheck>(), Substitute.For <IProcessStarter>(), new PdfArchitectTabTranslation()); var viewModelBundle = new ApplicationSettingsViewModelBundle(generalTabViewModel, printerTabViewModel, titleTabViewModel, debugTabViewModel, licenseTabViewModel, pdfArchitectTabViewModel); return(new ApplicationSettingsViewModel(viewModelBundle, new TranslationHelper(new DefaultSettingsProvider(), new AssemblyHelper(), new TranslationFactory()), new LicenseOptionProvider(false), new ApplicationSettingsWindowTranslation())); }
public ApplicationSettingsViewModelBundle(GeneralTabViewModel generalTabViewModel, PrinterTabViewModel printerTabViewModel, TitleTabViewModel titleTabViewModel, DebugTabViewModel debugTabViewModel, LicenseTabViewModel licenseTabViewModel, PdfArchitectTabViewModel pdfArchitectTabViewModel) { GeneralTabViewModel = generalTabViewModel; PrinterTabViewModel = printerTabViewModel; TitleTabViewModel = titleTabViewModel; DebugTabViewModel = debugTabViewModel; LicenseTabViewModel = licenseTabViewModel; PdfArchitectTabViewModel = pdfArchitectTabViewModel; }