public SettingsSingleton( IFileSystem fileSystem, IGuiSettingsPath guiPaths, IGuiSettingsImporter guiSettingsImporter, IPipelineSettingsImporter pipelineSettingsImporter, IPipelineSettingsPath paths) { ISynthesisGuiSettings?guiSettings = null; IPipelineSettings? pipeSettings = null; Task.WhenAll( Task.Run(async() => { if (fileSystem.File.Exists(guiPaths.Path)) { guiSettings = guiSettingsImporter.Import(guiPaths.Path); } }), Task.Run(async() => { if (fileSystem.File.Exists(paths.Path)) { pipeSettings = pipelineSettingsImporter.Import(paths.Path); } }) ).Wait(); Gui = guiSettings ?? new SynthesisGuiSettings(); Pipeline = pipeSettings ?? new PipelineSettings(); }
public void ReturnsDefaultGuiIfMissing( [Frozen] IGuiSettingsPath guiPaths, [Frozen] IGuiSettingsImporter settingsImporter, FilePath missingPath, ISynthesisGuiSettings settings, Func <SettingsSingleton> sut) { settingsImporter.Import(default).ReturnsForAnyArgs(settings);