protected void SetupMockControlFileFor2Podcasts(DiagnosticOutputLevel level = DiagnosticOutputLevel.None) { podcast1Mocker = new PodcastInfoMocker() .ApplyFolder(PODCAST_FOLDER_1); podcast2Mocker = new PodcastInfoMocker() .ApplyFolder(PODCAST_FOLDER_2); var podcasts = new List <IPodcastInfo>(2) { podcast1Mocker.GetMockedPodcastInfo(), podcast2Mocker.GetMockedPodcastInfo() }; MockControlFile = new ControlFileMocker() .ApplySourceRoot(SOURCE_ROOT) .ApplyRetryWaitInSeconds(RETRY_TIME) .ApplyDiagnosticRetainTemporaryFiles(DIAGS) .ApplyMaximumNumberOfConcurrentDownloads(MAX_DOWNLOADS) .ApplyFreeSpaceToLeaveOnDownload(FREE_DISK_SPACE_MB - 1) .ApplyDiagnosticOutput(level) .ApplyPodcasts(podcasts) .GetMockedControlFile(); A.CallTo(() => MockApplicationControlFileProvider.GetApplicationConfiguration()).Returns(MockControlFile); }
public void ReplaceApplicationConfiguration(IReadWriteControlFile file) { Logger.Debug(() => $"ApplicationControlFileProvider:ReplaceApplicationConfiguration"); lock (SyncLock) { ControlFile = null; file.SaveToFile(GetApplicationControlFilePath()); ControlFile = file; } }
private void ExecuteOpenFileCommand(object parameter) { var selectedFile = _browseForFileService.BrowseForFileToOpen("Control Files|*.xml"); if (selectedFile != null) { _controlFile = _controlFileFactory.OpenControlFile(selectedFile); Podcasts = new ObservableCollection <PodcastViewModel>( _controlFile.GetPodcasts().Select(p => new PodcastViewModel(p))); } }
protected void SetupMockControlFileFor1Podcast() { var podcastMocker = new PodcastInfoMocker() .ApplyFolder("folder1"); MockControlFile = new ControlFileMocker() .ApplySourceRoot("/sdcard/sourceroot") .ApplyPlaylistFormat(PlaylistFormat.M3U) .ApplyPodcasts(podcastMocker.GetMockedPodcastInfoAsList()) .GetMockedControlFile(); A.CallTo(() => MockApplicationControlFileProvider.GetApplicationConfiguration()).Returns(MockControlFile); }
protected void SetupMockControlFileFor2Podcasts(DiagnosticOutputLevel level = DiagnosticOutputLevel.None) { podcast1Mocker = new PodcastInfoMocker() .ApplyFolder(PODCAST_FOLDER_1); podcast2Mocker = new PodcastInfoMocker() .ApplyFolder(PODCAST_FOLDER_2); var podcasts = new List <IPodcastInfo>(2) { podcast1Mocker.GetMockedPodcastInfo(), podcast2Mocker.GetMockedPodcastInfo() }; MockControlFile = new ControlFileMocker() .ApplySourceRoot(SOURCE_ROOT) .ApplyPodcasts(podcasts) .GetMockedControlFile(); A.CallTo(() => MockApplicationControlFileProvider.GetApplicationConfiguration()).Returns(MockControlFile); }
protected override void GivenThat() { base.GivenThat(); ControlFile = GenerateMock <IReadWriteControlFile>(); ApplicationService = GenerateMock <IApplicationService>(); BrowseForFileService = GenerateMock <IBrowseForFileService>(); DialogService = GenerateMock <IDialogService>(); ControlFileFactory = GenerateMock <IControlFileFactory>(); PodcastFactory = GenerateMock <IPodcastFactory>(); ClipboardService = GenerateMock <IClipboardService>(); DataObjectUriExtractor = GenerateMock <IDataObjectUriExtractor>(); ViewModel = new ConfigurePodcastsViewModel( ApplicationService, BrowseForFileService, DialogService, ControlFileFactory, PodcastFactory, ClipboardService, DataObjectUriExtractor); }
public IReadWriteControlFile GetApplicationConfiguration() { lock (SyncLock) { if (ControlFile != null) { return(ControlFile); } try { var filename = GetApplicationControlFilePath(); Logger.Debug(() => $"ApplicationControlFileProvider:GetApplicationConfiguration loading {filename}"); if (FileSystemHelper.Exists(filename)) { Logger.Debug(() => $"ApplicationControlFileProvider:GetApplicationConfiguration exists {filename}"); ControlFile = ControlFileFactory.OpenControlFile(filename); } } catch (Exception ex) { Logger.LogException(() => $"ApplicationControlFileProvider:GetApplicationConfiguration", ex); } } return(ControlFile); }