mirror of https://github.com/Radarr/Radarr
Fixed a bug in DiskProvider where it wouldn't copy subfolders properly.
This commit is contained in:
parent
bc5307a4d3
commit
ecbf127321
|
@ -35,11 +35,7 @@ namespace NzbDrone.Common.Test
|
|||
diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName);
|
||||
|
||||
//Assert
|
||||
BinFolder.Refresh();
|
||||
BinFolderCopy.Refresh();
|
||||
|
||||
BinFolder.GetFiles("*.*", SearchOption.AllDirectories)
|
||||
.Should().HaveSameCount(BinFolderCopy.GetFiles("*.*", SearchOption.AllDirectories));
|
||||
VerifyCopy();
|
||||
}
|
||||
|
||||
[Test]
|
||||
|
@ -51,16 +47,24 @@ namespace NzbDrone.Common.Test
|
|||
diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName);
|
||||
|
||||
//Delete Random File
|
||||
BinFolderCopy.GetFiles().First().Delete();
|
||||
BinFolderCopy.Refresh();
|
||||
BinFolderCopy.GetFiles("*.*", SearchOption.AllDirectories).First().Delete();
|
||||
|
||||
diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName);
|
||||
|
||||
//Assert
|
||||
VerifyCopy();
|
||||
}
|
||||
|
||||
private void VerifyCopy()
|
||||
{
|
||||
BinFolder.Refresh();
|
||||
BinFolderCopy.Refresh();
|
||||
|
||||
BinFolder.GetFiles("*.*", SearchOption.AllDirectories)
|
||||
.Should().HaveSameCount(BinFolderCopy.GetFiles("*.*", SearchOption.AllDirectories));
|
||||
BinFolderCopy.GetFiles("*.*", SearchOption.AllDirectories)
|
||||
.Should().HaveSameCount(BinFolder.GetFiles("*.*", SearchOption.AllDirectories));
|
||||
|
||||
BinFolderCopy.GetDirectories().Should().HaveSameCount(BinFolder.GetDirectories());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -67,7 +67,12 @@ namespace NzbDrone.Common
|
|||
targetFolder.Create();
|
||||
}
|
||||
|
||||
foreach (var file in sourceFolder.GetFiles("*.*", SearchOption.AllDirectories))
|
||||
foreach (var subDir in sourceFolder.GetDirectories())
|
||||
{
|
||||
CopyDirectory(subDir.FullName, Path.Combine(target, subDir.Name));
|
||||
}
|
||||
|
||||
foreach (var file in sourceFolder.GetFiles("*.*", SearchOption.TopDirectoryOnly))
|
||||
{
|
||||
var destFile = Path.Combine(target, file.Name);
|
||||
file.CopyTo(destFile, true);
|
||||
|
|
Loading…
Reference in New Issue