public void Run_CancellationPending_WorkerStopsAfterThirdFileAndDoesntContinueTraverseFiles() { // arrange _settings = new RandomizerWorkerSettings { PathsFrom = new string[] { "path from" } }; FileEnumerationStub stub = new FileEnumerationStub(_backgroundWorkerMock); _settings.PathsFrom.ToList().ForEach(x => _traverseServiceMock.Setup(y => y.TraverseFolder(x)).Returns(stub.GetFilesWithCancelCallback)); // act _worker.Run(_settings, (x) => { }, (y) => { }, () => { }); _backgroundWorkerMock.Raise(x => { x.OnDoWork += null; }, null, new System.ComponentModel.DoWorkEventArgs(null)); // assert Assert.That(stub.filesCalledIndex, Is.EqualTo(3)); }
public void Run_SettingsContainsFilesNumberLimit_WorkerStopsAfterThirdFileAndDoesntContinueIteratingFiles() { // arrange _settings = new RandomizerWorkerSettings { FilesNumberLimit = 1, SelectedLimit = LimitType.FilesNumber }; FileEnumerationStub stub = new FileEnumerationStub(_backgroundWorkerMock); _fileServiceMock.Setup(x => x.GetFilesByFilesNumber(It.IsAny <bool>(), It.IsAny <IEnumerable <AppFile> >(), It.IsAny <IEnumerable <AppFile> >(), _settings.FilesNumberLimit)).Returns(stub.GetFilesWithCancelCallback); // act _worker.Run(_settings, (x) => { }, (y) => { }, () => { }); _backgroundWorkerMock.Raise(x => { x.OnDoWork += null; }, null, new System.ComponentModel.DoWorkEventArgs(null)); // assert Assert.That(stub.filesCalledIndex, Is.EqualTo(3)); }
public void Run_ExecutesTraverseFunctionAndReturnsFilesFromSourceFolder() { // arrange _settings = new RandomizerWorkerSettings { PathsFrom = new string[] { "path from" } }; FileEnumerationStub stub = new FileEnumerationStub(_backgroundWorkerMock); _settings.PathsFrom.ToList().ForEach(x => _traverseServiceMock.Setup(y => y.TraverseFolder(x)).Returns(stub.GetFiles)); // act _worker.Run(_settings, (x) => { }, (y) => { }, () => { }); _backgroundWorkerMock.Raise(x => { x.OnDoWork += null; }, null, new System.ComponentModel.DoWorkEventArgs(null)); // assert Assert.That(stub.filesCalledIndex, Is.EqualTo(5)); }
public void Run_SettingsContainsFoldersNumberLimitAndFilesInFolderNumberLimit_ReturnsRandomNonUniqueFiles() { // arrange _settings = new RandomizerWorkerSettings { FoldersNumberLimit = 1, FilesNumberPerFolderLimit = 1, SelectedLimit = LimitType.FilesNumberPerFolder }; FileEnumerationStub stub = new FileEnumerationStub(_backgroundWorkerMock); _fileServiceMock.Setup(x => x.GetFilesByFilesNumber(It.IsAny <bool>(), It.IsAny <IEnumerable <AppFile> >(), It.IsAny <IEnumerable <AppFile> >(), _settings.FoldersNumberLimit)).Returns(stub.GetFiles); // act _worker.Run(_settings, (x) => { }, (y) => { }, () => { }); _backgroundWorkerMock.Raise(x => { x.OnDoWork += null; }, null, new System.ComponentModel.DoWorkEventArgs(null)); // assert Assert.That(stub.filesCalledIndex, Is.EqualTo(5)); }
public void Run_SupplySettingOnDuplicateDontCopyAndCancellationPending_WorkerStopsAfterThirdFileAndDoesntContinueIteratingFiles() { // arrange _settings = new RandomizerWorkerSettings { OnDuplicateDoNotCopy = true, PathTo = "path to" }; FileEnumerationStub stub = new FileEnumerationStub(_backgroundWorkerMock); _fileServiceMock .Setup(x => x.GetFiles(_settings.PathTo)) .Returns(stub.GetFilesWithCancelCallback); // act _worker.Run(_settings, (x) => { }, (y) => { }, () => { }); _backgroundWorkerMock.Raise(x => { x.OnDoWork += null; }, null, new System.ComponentModel.DoWorkEventArgs(null)); // assert Assert.That(stub.filesCalledIndex, Is.EqualTo(3)); }
public void Run_SettingsContainsFoldersNumberLimitAndFilesInFolderNumberLimit_WorkerStopsAfterThirdFileAndDoesntContinueIteratingFiles() { // arrange _settings = new RandomizerWorkerSettings { FoldersNumberLimit = 1, FilesNumberPerFolderLimit = 1, SelectedLimit = LimitType.FilesNumberPerFolder }; FileEnumerationStub stub = new FileEnumerationStub(_backgroundWorkerMock); _fileServiceMock.Setup(x => x.GetFilesByFilesNumber(It.IsAny<bool>(), It.IsAny<IEnumerable<AppFile>>(), It.IsAny<IEnumerable<AppFile>>(), _settings.FoldersNumberLimit)).Returns(stub.GetFilesWithCancelCallback); // act _worker.Run(_settings, (x) => { }, (y) => { }, () => { }); _backgroundWorkerMock.Raise(x => { x.OnDoWork += null; }, null, new System.ComponentModel.DoWorkEventArgs(null)); // assert Assert.That(stub.filesCalledIndex, Is.EqualTo(3)); }
public void Run_SettingsContainsFilesNumberLimit_ReturnsRandomNonUniqueFiles() { // arrange _settings = new RandomizerWorkerSettings { FilesNumberLimit = 1, SelectedLimit = LimitType.FilesNumber }; FileEnumerationStub stub = new FileEnumerationStub(_backgroundWorkerMock); _fileServiceMock.Setup(x => x.GetFilesByFilesNumber(It.IsAny<bool>(), It.IsAny<IEnumerable<AppFile>>(), It.IsAny<IEnumerable<AppFile>>(), _settings.FilesNumberLimit)).Returns(stub.GetFiles); // act _worker.Run(_settings, (x) => { }, (y) => { }, () => { }); _backgroundWorkerMock.Raise(x => { x.OnDoWork += null; }, null, new System.ComponentModel.DoWorkEventArgs(null)); // assert Assert.That(stub.filesCalledIndex, Is.EqualTo(5)); }