public void Setup() { _tmpFolder = new TemporaryFolder("NewSessionsFromFilesTests"); _srcFolder = _tmpFolder.Combine("source"); _sessionsFolder = _tmpFolder.Combine(Session.kFolderName); Directory.CreateDirectory(_srcFolder); var repo = new Mock <ElementRepository <Session> >(); repo.Setup(e => e.PathToFolder).Returns(_sessionsFolder); _sessionPresentationModel = new ElementListViewModel <Session>(repo.Object); _model = new TestNewSessionsFromFileDlgViewModel(_sessionPresentationModel, CreateNewComponentFile); }
/// ------------------------------------------------------------------------------------ public NewSessionsFromFileDlgViewModel(ElementListViewModel <Session> sessionPresentationModel, NewComponentFile.NewComponentFileFactory newComponentFileFactory) { _newComponentFileFactory = newComponentFileFactory; SessionPresentationModel = sessionPresentationModel; _fileWatcher = new FileSystemWatcher(); _fileWatcher.EnableRaisingEvents = false; _fileWatcher.IncludeSubdirectories = false; _fileWatcher.Renamed += HandleFileWatcherRenameEvent; _fileWatcher.Deleted += HandleFileWatcherDeleteOrCreatedEvent; _fileWatcher.Created += HandleFileWatcherDeleteOrCreatedEvent; _fileLoaderWorker = new BackgroundWorker(); _fileLoaderWorker.WorkerReportsProgress = true; _fileLoaderWorker.WorkerSupportsCancellation = true; _fileLoaderWorker.ProgressChanged += HandleFileLoaderProgressChanged; _fileLoaderWorker.RunWorkerCompleted += HandleFileLoaderComplete; _fileLoaderWorker.DoWork += HandleFileLoaderDoWork; m_files = new List <NewComponentFile>(); }
public void Setup() { SIL.Reporting.ErrorReport.IsOkToInteractWithUser = false; _tmpFolder = new TemporaryFolder("elementRepoTestFolder"); var peter = new Mock <Person>(); peter.Setup(p => p.Id).Returns("peter"); peter.Setup(p => p.GetComponentFiles()).Returns(new[] { ComponentFileTests.CreateComponentFile(_tmpFolder, peter.Object, "peterSong1.mp3"), ComponentFileTests.CreateComponentFile(_tmpFolder, peter.Object, "peterSong2.mp3"), }); var paul = new Mock <Person>(); paul.Setup(p => p.Id).Returns("paul"); paul.Setup(p => p.GetComponentFiles()).Returns(new[] { ComponentFileTests.CreateComponentFile(_tmpFolder, peter.Object, "paulSong1.mp3"), ComponentFileTests.CreateComponentFile(_tmpFolder, peter.Object, "paulSong2.mp3"), }); var mary = new Mock <Person>(); mary.Setup(p => p.Id).Returns("mary"); mary.Setup(p => p.GetComponentFiles()).Returns(new[] { ComponentFileTests.CreateComponentFile(_tmpFolder, peter.Object, "marySong1.mp3"), ComponentFileTests.CreateComponentFile(_tmpFolder, peter.Object, "marySong2.mp3"), }); _repo = new ElementRepository <Person>(_tmpFolder.Path, Person.kFolderName, new PersonFileType(null, null), (folder, id, idChangedAction) => { switch (id) { case "peter": return(peter.Object); case "paul": return(paul.Object); case "mary": return(mary.Object); } return(null); }); Directory.CreateDirectory(_tmpFolder.Combine(Person.kFolderName, "peter")); Directory.CreateDirectory(_tmpFolder.Combine(Person.kFolderName, "paul")); Directory.CreateDirectory(_tmpFolder.Combine(Person.kFolderName, "mary")); peter.Setup(p => p.FolderPath).Returns(_tmpFolder.Combine(Person.kFolderName, "peter")); paul.Setup(p => p.FolderPath).Returns(_tmpFolder.Combine(Person.kFolderName, "paul")); mary.Setup(p => p.FolderPath).Returns(_tmpFolder.Combine(Person.kFolderName, "mary")); _repo.CreateNew("peter"); _repo.CreateNew("paul"); _repo.CreateNew("mary"); _model = new ElementListViewModel <Person>(_repo); }
internal TestNewSessionsFromFileDlgViewModel(ElementListViewModel <Session> sessionPresentationModel, NewComponentFile.NewComponentFileFactory newComponentFileFactory) : base(sessionPresentationModel, newComponentFileFactory) { }
public void NotifyElementsReportReady(string title, IEnumerable <IDsmElement> elements) { ElementListViewModel elementListViewModel = new ElementListViewModel(title, elements); ElementsReportReady?.Invoke(this, elementListViewModel); }