public BannerProvider(HttpProvider httpProvider, EnvironmentProvider environmentProvider, DiskProvider diskProvider) { _httpProvider = httpProvider; _environmentProvider = environmentProvider; _diskProvider = diskProvider; }
public void should_not_delete_if_there_is_large_rar_file() { GivenValidAuthor(); var localTrack = new LocalBook(); var imported = new List <ImportDecision <LocalBook> >(); imported.Add(new ImportDecision <LocalBook>(localTrack)); Mocker.GetMock <IMakeImportDecision>() .Setup(v => v.GetImportDecisions(It.IsAny <List <IFileInfo> >(), It.IsAny <IdentificationOverrides>(), It.IsAny <ImportDecisionMakerInfo>(), It.IsAny <ImportDecisionMakerConfig>())) .Returns(imported); Mocker.GetMock <IImportApprovedBooks>() .Setup(s => s.Import(It.IsAny <List <ImportDecision <LocalBook> > >(), true, null, ImportMode.Auto)) .Returns(imported.Select(i => new ImportResult(i)).ToList()); GivenAudioFiles(new[] { _audioFiles.First().Replace(".ext", ".rar") }, 15.Megabytes()); Subject.ProcessRootFolder(DiskProvider.GetDirectoryInfo(_droneFactory)); DiskProvider.FolderExists(_subFolders[0]).Should().BeTrue(); ExceptionVerification.ExpectedWarns(1); }
public void should_not_delete_folder_if_files_were_imported_and_audio_files_remain() { GivenValidAuthor(); var localTrack = new LocalBook(); var imported = new List <ImportDecision <LocalBook> >(); imported.Add(new ImportDecision <LocalBook>(localTrack)); Mocker.GetMock <IMakeImportDecision>() .Setup(v => v.GetImportDecisions(It.IsAny <List <IFileInfo> >(), It.IsAny <IdentificationOverrides>(), It.IsAny <ImportDecisionMakerInfo>(), It.IsAny <ImportDecisionMakerConfig>())) .Returns(imported); Mocker.GetMock <IImportApprovedBooks>() .Setup(s => s.Import(It.IsAny <List <ImportDecision <LocalBook> > >(), true, null, ImportMode.Auto)) .Returns(imported.Select(i => new ImportResult(i)).ToList()); Subject.ProcessRootFolder(DiskProvider.GetDirectoryInfo(_droneFactory)); Mocker.GetMock <IDiskProvider>() .Verify(v => v.DeleteFolder(It.IsAny <string>(), true), Times.Never()); ExceptionVerification.ExpectedWarns(1); }
public void should_not_delete_if_no_files_were_imported() { GivenValidAuthor(); var localTrack = new LocalBook(); var imported = new List <ImportDecision <LocalBook> >(); imported.Add(new ImportDecision <LocalBook>(localTrack)); Mocker.GetMock <IMakeImportDecision>() .Setup(v => v.GetImportDecisions(It.IsAny <List <IFileInfo> >(), It.IsAny <IdentificationOverrides>(), It.IsAny <ImportDecisionMakerInfo>(), It.IsAny <ImportDecisionMakerConfig>())) .Returns(imported); Mocker.GetMock <IImportApprovedBooks>() .Setup(s => s.Import(It.IsAny <List <ImportDecision <LocalBook> > >(), true, null, ImportMode.Auto)) .Returns(new List <ImportResult>()); Subject.ProcessRootFolder(DiskProvider.GetDirectoryInfo(_droneFactory)); DiskProvider.FolderExists(_subFolders[0]).Should().BeTrue(); Mocker.GetMock <IDiskProvider>() .Verify(v => v.DeleteFolder(It.IsAny <string>(), true), Times.Never()); }
public PostDownloadProvider(DiskProvider diskProvider, DiskScanProvider diskScanProvider, SeriesProvider seriesProvider) { _diskProvider = diskProvider; _diskScanProvider = diskScanProvider; _seriesProvider = seriesProvider; }
public LogController(LogProvider logProvider, EnvironmentProvider environmentProvider, DiskProvider diskProvider) { _logProvider = logProvider; _environmentProvider = environmentProvider; _diskProvider = diskProvider; }
public void filter_unmatched_should_not_return_existing_file_if_matched(FilterFilesType filter) { FileSystem.AddFile("C:\\file1.avi".AsOsAgnostic(), new MockFileData("".PadRight(10)) { LastWriteTime = _lastWrite }); FileSystem.AddFile("C:\\file2.avi".AsOsAgnostic(), new MockFileData("".PadRight(10)) { LastWriteTime = _lastWrite }); FileSystem.AddFile("C:\\file3.avi".AsOsAgnostic(), new MockFileData("".PadRight(10)) { LastWriteTime = _lastWrite }); var files = FileSystem.AllFiles.Select(x => DiskProvider.GetFileInfo(x)).ToList(); Mocker.GetMock <IMediaFileRepository>() .Setup(c => c.GetFilesWithBasePath(It.IsAny <string>())) .Returns(new List <TrackFile> { new TrackFile { Path = "C:\\file2.avi".AsOsAgnostic(), Size = 10, Modified = _lastWrite, Tracks = Builder <Track> .CreateListOfSize(1).Build() as List <Track> } }); Subject.FilterUnchangedFiles(files, _artist, filter).Should().HaveCount(2); Subject.FilterUnchangedFiles(files, _artist, filter).Select(x => x.FullName).Should().NotContain("C:\\file2.avi".AsOsAgnostic()); }
public void Setup() { GivenAudioFiles(_audioFiles, 10); Mocker.GetMock <IDiskScanService>().Setup(c => c.GetBookFiles(It.IsAny <string>(), It.IsAny <bool>())) .Returns(_audioFiles.Select(x => DiskProvider.GetFileInfo(x)).ToArray()); Mocker.GetMock <IDiskScanService>().Setup(c => c.FilterFiles(It.IsAny <string>(), It.IsAny <IEnumerable <IFileInfo> >())) .Returns <string, IEnumerable <IFileInfo> >((b, s) => s.ToList()); Mocker.GetMock <IImportApprovedBooks>() .Setup(s => s.Import(It.IsAny <List <ImportDecision <LocalBook> > >(), true, null, ImportMode.Auto)) .Returns(new List <ImportResult>()); var downloadItem = Builder <DownloadClientItem> .CreateNew() .With(v => v.DownloadId = "sab1") .With(v => v.Status = DownloadItemStatus.Downloading) .Build(); var remoteBook = Builder <RemoteBook> .CreateNew() .With(v => v.Author = new Author()) .Build(); _trackedDownload = new TrackedDownload { DownloadItem = downloadItem, RemoteBook = remoteBook, State = TrackedDownloadState.Downloading }; }
public void filter_should_return_existing_file_if_size_changed(FilterFilesType filter) { FileSystem.AddFile("C:\\file1.avi".AsOsAgnostic(), new MockFileData("".PadRight(10)) { LastWriteTime = _lastWrite }); FileSystem.AddFile("C:\\file2.avi".AsOsAgnostic(), new MockFileData("".PadRight(11)) { LastWriteTime = _lastWrite }); FileSystem.AddFile("C:\\file3.avi".AsOsAgnostic(), new MockFileData("".PadRight(10)) { LastWriteTime = _lastWrite }); var files = FileSystem.AllFiles.Select(x => DiskProvider.GetFileInfo(x)).ToList(); Mocker.GetMock <IMediaFileRepository>() .Setup(c => c.GetFileWithPath(It.IsAny <List <string> >())) .Returns(new List <TrackFile> { new TrackFile { Path = "C:\\file2.avi".AsOsAgnostic(), Size = 10, Modified = _lastWrite } }); Subject.FilterUnchangedFiles(files, filter).Should().HaveCount(3); Subject.FilterUnchangedFiles(files, filter).Select(x => x.FullName).Should().Contain("C:\\file2.avi".AsOsAgnostic()); }
public BlackholeProvider(ConfigProvider configProvider, HttpProvider httpProvider, DiskProvider diskProvider, UpgradeHistorySpecification upgradeHistorySpecification) { _configProvider = configProvider; _httpProvider = httpProvider; _diskProvider = diskProvider; _upgradeHistorySpecification = upgradeHistorySpecification; }
public UpdateController(UpdateProvider updateProvider, JobProvider jobProvider, EnvironmentProvider environmentProvider, DiskProvider diskProvider) { _updateProvider = updateProvider; _jobProvider = jobProvider; _environmentProvider = environmentProvider; _diskProvider = diskProvider; }
public UpdateProvider(HttpProvider httpProvider, ConfigProvider configProvider, EnvironmentProvider environmentProvider, DiskProvider diskProvider) { _httpProvider = httpProvider; _configProvider = configProvider; _environmentProvider = environmentProvider; _diskProvider = diskProvider; }
public BannerDownloadJob(SeriesProvider seriesProvider, HttpProvider httpProvider, DiskProvider diskProvider, EnviromentProvider enviromentProvider) { _seriesProvider = seriesProvider; _httpProvider = httpProvider; _diskProvider = diskProvider; _enviromentProvider = enviromentProvider; }
public PostDownloadProvider(DiskProvider diskProvider, DiskScanProvider diskScanProvider, SeriesProvider seriesProvider, MetadataProvider metadataProvider) { _diskProvider = diskProvider; _diskScanProvider = diskScanProvider; _seriesProvider = seriesProvider; _metadataProvider = metadataProvider; }
static async Task Main(string[] args) { // Attempt to set the version of MSBuild. var visualStudioInstances = MSBuildLocator.QueryVisualStudioInstances().ToArray(); var instance = visualStudioInstances.Length == 1 // If there is only one instance of MSBuild on this machine, set that as the one to use. ? visualStudioInstances[0] // Handle selecting the version of MSBuild you want to use. : SelectVisualStudioInstance(visualStudioInstances); Console.WriteLine($"Using MSBuild at '{instance.MSBuildPath}' to load projects."); // NOTE: Be sure to register an instance with the MSBuildLocator // before calling MSBuildWorkspace.Create() // otherwise, MSBuildWorkspace won't MEF compose. MSBuildLocator.RegisterInstance(instance); var projectPath = args[0]; documentation = new Documentation(projectPath); var properties = new Dictionary <string, string> { { "Configuration", "Debug" }, }; using (var workspace = MSBuildWorkspace.Create(properties)) { // Print message for WorkspaceFailed event to help diagnosing project load failures. workspace.WorkspaceFailed += (o, e) => Console.WriteLine(e.Diagnostic.Message); Console.WriteLine($"Loading solution '{projectPath}'"); // Attach progress reporter so we print projects as they are loaded. var solution = await workspace.OpenSolutionAsync(projectPath, new ConsoleProgressReporter()); Console.WriteLine($"Finished loading solution '{projectPath}'"); foreach (var project in solution.Projects) { var compilation = await project.GetCompilationAsync(); foreach (var document in project.Documents) { var syntaxTree = await document.GetSyntaxTreeAsync(); var syntaxRoot = await syntaxTree.GetRootAsync(); IterateSyntaxNode(compilation, syntaxTree, syntaxRoot); } } DiskProvider.Save(args[1], documentation.Namespaces.Values.ToList()); // TODO: Do analysis on the projects in the loaded solution } }
private void GivenAudioFiles(IEnumerable <string> videoFiles) { foreach (var file in videoFiles) { FileSystem.AddFile(file, new MockFileData(string.Empty)); } _fileInfos = videoFiles.Select(x => DiskProvider.GetFileInfo(x)).ToList(); }
protected MetadataBase(ConfigProvider configProvider, DiskProvider diskProvider, BannerProvider bannerProvider, EpisodeProvider episodeProvider) { _configProvider = configProvider; _diskProvider = diskProvider; _bannerProvider = bannerProvider; _episodeProvider = episodeProvider; _logger = LogManager.GetLogger(GetType().ToString()); }
public UpdateProvider(DiskProvider diskProvider, ServiceProvider serviceProvider, ProcessProvider processProvider, EnvironmentProvider environmentProvider, IISProvider iisProvider) { _diskProvider = diskProvider; _serviceProvider = serviceProvider; _processProvider = processProvider; _environmentProvider = environmentProvider; _iisProvider = iisProvider; }
public SystemController(JobProvider jobProvider, IndexerProvider indexerProvider, ConfigProvider configProvider, DiskProvider diskProvider, BackupProvider backupProvider) { _jobProvider = jobProvider; _indexerProvider = indexerProvider; _configProvider = configProvider; _diskProvider = diskProvider; _backupProvider = backupProvider; }
public void CopyFolder_should_copy_folder() { //Act var diskProvider = new DiskProvider(); diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName); //Assert VerifyCopy(); }
public void should_not_delete_folder_if_no_files_were_imported() { Mocker.GetMock <IImportApprovedBooks>() .Setup(s => s.Import(It.IsAny <List <ImportDecision <LocalBook> > >(), false, null, ImportMode.Auto)) .Returns(new List <ImportResult>()); Subject.ProcessRootFolder(DiskProvider.GetDirectoryInfo(_droneFactory)); Mocker.GetMock <IDiskProvider>() .Verify(v => v.GetFolderSize(It.IsAny <string>()), Times.Never()); }
public SystemController(JobProvider jobProvider, IndexerProvider indexerProvider, ConfigProvider configProvider, DiskProvider diskProvider, BackupProvider backupProvider, StatsProvider statsProvider) { _jobProvider = jobProvider; _indexerProvider = indexerProvider; _configProvider = configProvider; _diskProvider = diskProvider; _backupProvider = backupProvider; _statsProvider = statsProvider; }
public AppUpdateJob(UpdateProvider updateProvider, EnvironmentProvider environmentProvider, DiskProvider diskProvider, HttpProvider httpProvider, ProcessProvider processProvider, ArchiveProvider archiveProvider, ConfigFileProvider configFileProvider) { _updateProvider = updateProvider; _environmentProvider = environmentProvider; _diskProvider = diskProvider; _httpProvider = httpProvider; _processProvider = processProvider; _archiveProvider = archiveProvider; _configFileProvider = configFileProvider; }
public void should_not_create_if_artist_folder_does_not_exist_and_create_folder_disabled() { GivenRootFolder(_otherArtistFolder); Mocker.GetMock <IConfigService>() .Setup(s => s.CreateEmptyArtistFolders) .Returns(false); Subject.Scan(_artist); DiskProvider.FolderExists(_artist.Path).Should().BeFalse(); }
public void should_not_skip_if_no_author_found() { Mocker.GetMock <IParsingService>().Setup(c => c.GetAuthor("foldername")).Returns((Author)null); Subject.ProcessRootFolder(DiskProvider.GetDirectoryInfo(_droneFactory)); Mocker.GetMock <IMakeImportDecision>() .Verify(c => c.GetImportDecisions(It.IsAny <List <IFileInfo> >(), It.IsAny <IdentificationOverrides>(), It.IsAny <ImportDecisionMakerInfo>(), It.IsAny <ImportDecisionMakerConfig>()), Times.Once()); VerifyImport(); }
public void moveFile_should_overwrite_existing_file() { var diskProvider = new DiskProvider(); diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName); var targetPath = Path.Combine(BinFolderCopy.FullName, "file.move"); diskProvider.MoveFile(BinFolderCopy.GetFiles("*.dll", SearchOption.AllDirectories).First().FullName, targetPath); diskProvider.MoveFile(BinFolderCopy.GetFiles("*.dll", SearchOption.AllDirectories).First().FullName, targetPath); File.Exists(targetPath).Should().BeTrue(); }
public void should_not_delete_folder_if_importmode_copy() { GivenValidAuthor(); GivenSuccessfulImport(); _trackedDownload.DownloadItem.CanMoveFiles = true; Subject.ProcessPath(_droneFactory, ImportMode.Copy, _trackedDownload.RemoteBook.Author, _trackedDownload.DownloadItem); DiskProvider.FolderExists(_subFolders[0]).Should().BeTrue(); }
private List <IFileInfo> GivenFiles(string[] files) { foreach (var file in files) { FileSystem.AddFile(file, new MockFileData(string.Empty) { LastWriteTime = _lastWrite }); } return(files.Select(x => DiskProvider.GetFileInfo(x)).ToList()); }
public void moveFile_should_not_move_overwrite_itself() { var diskProvider = new DiskProvider(); diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName); var targetPath = BinFolderCopy.GetFiles("*.dll", SearchOption.AllDirectories).First().FullName; diskProvider.MoveFile(targetPath, targetPath); File.Exists(targetPath).Should().BeTrue(); ExceptionVerification.ExpectedWarns(1); }
public void should_skip_if_no_artist_found() { Mocker.GetMock <IParsingService>().Setup(c => c.GetArtist("foldername")).Returns((Artist)null); Subject.ProcessRootFolder(DiskProvider.GetDirectoryInfo(_droneFactory)); Mocker.GetMock <IMakeImportDecision>() .Verify(c => c.GetImportDecisions(It.IsAny <List <IFileInfo> >(), It.IsAny <Artist>(), It.IsAny <ParsedTrackInfo>()), Times.Never()); VerifyNoImport(); }
public void should_delete_folder_if_importmode_move() { GivenValidArtist(); GivenSuccessfulImport(); _trackedDownload.DownloadItem.CanMoveFiles = false; Subject.ProcessPath(_droneFactory, ImportMode.Move, _trackedDownload.RemoteAlbum.Artist, _trackedDownload.DownloadItem); DiskProvider.FolderExists(_subFolders[0]).Should().BeFalse(); }
public void moveFile_should_overwrite_existing_file() { var diskProvider = new DiskProvider(); diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName); var targetPath = Path.Combine(BinFolderCopy.FullName, "file.move"); diskProvider.MoveFile(BinFolderCopy.GetFiles("*.dll", SearchOption.AllDirectories).First().FullName, targetPath); diskProvider.MoveFile(BinFolderCopy.GetFiles("*.pdb", SearchOption.AllDirectories).First().FullName, targetPath); File.Exists(targetPath).Should().BeTrue(); }
public void should_clean_if_folder_does_not_exist() { GivenRootFolder(_otherArtistFolder); Subject.Scan(new List <string> { _artist.Path }); DiskProvider.FolderExists(_artist.Path).Should().BeFalse(); Mocker.GetMock <IMediaFileTableCleanupService>() .Verify(v => v.Clean(It.IsAny <string>(), It.IsAny <List <string> >()), Times.Once()); }
public DiskScanProvider(DiskProvider diskProvider, EpisodeProvider episodeProvider, SeriesProvider seriesProvider, MediaFileProvider mediaFileProvider, ExternalNotificationProvider externalNotificationProvider, DownloadProvider downloadProvider, SignalRProvider signalRProvider) { _diskProvider = diskProvider; _episodeProvider = episodeProvider; _seriesProvider = seriesProvider; _mediaFileProvider = mediaFileProvider; _externalNotificationProvider = externalNotificationProvider; _downloadProvider = downloadProvider; _signalRProvider = signalRProvider; }
public void should_remove_unpack_from_folder_name(string prefix) { var folderName = "Alien Ant Farm - Truant (2003)"; FileSystem.AddDirectory(string.Format(@"C:\drop\{0}{1}", prefix, folderName).AsOsAgnostic()); Subject.ProcessRootFolder(DiskProvider.GetDirectoryInfo(_droneFactory)); Mocker.GetMock <IParsingService>() .Verify(v => v.GetAuthor(folderName), Times.Once()); Mocker.GetMock <IParsingService>() .Verify(v => v.GetAuthor(It.Is <string>(s => s.StartsWith(prefix))), Times.Never()); }
public AddSeriesController(RootDirProvider rootFolderProvider, ConfigProvider configProvider, QualityProvider qualityProvider, TvDbProvider tvDbProvider, SeriesProvider seriesProvider, JobProvider jobProvider, DiskProvider diskProvider) { _rootFolderProvider = rootFolderProvider; _configProvider = configProvider; _qualityProvider = qualityProvider; _tvDbProvider = tvDbProvider; _seriesProvider = seriesProvider; _jobProvider = jobProvider; _diskProvider = diskProvider; }
public DiskScanProvider(DiskProvider diskProvider, EpisodeProvider episodeProvider, SeriesProvider seriesProvider, MediaFileProvider mediaFileProvider, ExternalNotificationProvider externalNotificationProvider, DownloadProvider downloadProvider, SignalRProvider signalRProvider, ConfigProvider configProvider, RecycleBinProvider recycleBinProvider, MediaInfoProvider mediaInfoProvider) { _diskProvider = diskProvider; _episodeProvider = episodeProvider; _seriesProvider = seriesProvider; _mediaFileProvider = mediaFileProvider; _externalNotificationProvider = externalNotificationProvider; _downloadProvider = downloadProvider; _signalRProvider = signalRProvider; _configProvider = configProvider; _recycleBinProvider = recycleBinProvider; _mediaInfoProvider = mediaInfoProvider; }
public RecycleBinProvider(DiskProvider diskProvider, ConfigProvider configProvider) { _diskProvider = diskProvider; _configProvider = configProvider; }
public void MoveFolder_should_overright_existing_folder() { var diskProvider = new DiskProvider(); diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName); diskProvider.CopyDirectory(BinFolder.FullName, BinFolderMove.FullName); VerifyCopy(); //Act diskProvider.MoveDirectory(BinFolderCopy.FullName, BinFolderMove.FullName); //Assert VerifyMove(); }
public void CopyFolder_should_overright_existing_folder() { //Act var diskProvider = new DiskProvider(); diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName); //Delete Random File BinFolderCopy.Refresh(); BinFolderCopy.GetFiles("*.*", SearchOption.AllDirectories).First().Delete(); diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName); //Assert VerifyCopy(); }
public MediaInfoProvider(DiskProvider diskProvider) { _diskProvider = diskProvider; }
public PostDownloadScanJob(PostDownloadProvider postDownloadProvider,ConfigProvider configProvider, DiskProvider diskProvider) { _postDownloadProvider = postDownloadProvider; _configProvider = configProvider; _diskProvider = diskProvider; }
public RootDirProvider(IDatabase database, SeriesProvider seriesProvider, DiskProvider diskProvider) { _database = database; _diskProvider = diskProvider; _seriesProvider = seriesProvider; }