public void BasicStateTest() { //Given var(workerMock, watcherMock, source, file, dest) = GetDefaultTestObjects(); var sut = new FileCopy.FileCopy(workerMock.Object, watcherMock.Object, source, file, dest); //When sut.Start(); //Then Assert.Equal(FileCopyStatus.Running, sut.Status); }
public void PathCombineTest() { //Given var(workerMock, watcherMock, source, file, dest) = GetDefaultTestObjects(); //When var sut = new FileCopy.FileCopy(workerMock.Object, watcherMock.Object, source, file, dest); //Then Assert.Equal("c:/test.txt", sut.SourcePath); Assert.Equal("c:/tmp/test.txt", sut.TargetPath); }
public async void StartAndStopTest() { //Given var(workerMock, watcherMock, source, file, dest) = GetDefaultTestObjects(); var sut = new FileCopy.FileCopy(workerMock.Object, watcherMock.Object, source, file, dest); var observer = sut.ProgressUpdates; //When sut.Start(); WatcherSubject[watcherMock].OnNext(WatcherChangeTypes.Changed); WorkerFileSizeManager[workerMock].Sources[0].SetResult((SourceSize: 10, TargetSize: 5)); WorkerFileCopyManager[workerMock].Sources[0].SetResult(true); //Indicates that copy is finished //Then Assert.Equal(FileCopyStatus.Finished, sut.Status); }
public async void PercentCalculationTest() { //Given var(workerMock, watcherMock, source, file, dest) = GetDefaultTestObjects(); workerMock.Setup(w => w.FileSize()).Returns(Task.FromResult((SourceSize: 10, TargetSize: 5))); var sut = new FileCopy.FileCopy(workerMock.Object, watcherMock.Object, source, file, dest); var observer = sut.ProgressUpdates; //When sut.Start(); WatcherSubject[watcherMock].OnNext(WatcherChangeTypes.Changed); //Then //Observable should put up a 50% value result var result = sut.ProgressUpdates.First(); Assert.Equal(10, result.SourceSize); Assert.Equal(5, result.CurrentSize); }