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);
|
diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName);
|
||||||
|
|
||||||
//Assert
|
//Assert
|
||||||
BinFolder.Refresh();
|
VerifyCopy();
|
||||||
BinFolderCopy.Refresh();
|
|
||||||
|
|
||||||
BinFolder.GetFiles("*.*", SearchOption.AllDirectories)
|
|
||||||
.Should().HaveSameCount(BinFolderCopy.GetFiles("*.*", SearchOption.AllDirectories));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
|
@ -51,16 +47,24 @@ namespace NzbDrone.Common.Test
|
||||||
diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName);
|
diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName);
|
||||||
|
|
||||||
//Delete Random File
|
//Delete Random File
|
||||||
BinFolderCopy.GetFiles().First().Delete();
|
BinFolderCopy.Refresh();
|
||||||
|
BinFolderCopy.GetFiles("*.*", SearchOption.AllDirectories).First().Delete();
|
||||||
|
|
||||||
diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName);
|
diskProvider.CopyDirectory(BinFolder.FullName, BinFolderCopy.FullName);
|
||||||
|
|
||||||
//Assert
|
//Assert
|
||||||
|
VerifyCopy();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void VerifyCopy()
|
||||||
|
{
|
||||||
BinFolder.Refresh();
|
BinFolder.Refresh();
|
||||||
BinFolderCopy.Refresh();
|
BinFolderCopy.Refresh();
|
||||||
|
|
||||||
BinFolder.GetFiles("*.*", SearchOption.AllDirectories)
|
BinFolderCopy.GetFiles("*.*", SearchOption.AllDirectories)
|
||||||
.Should().HaveSameCount(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();
|
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);
|
var destFile = Path.Combine(target, file.Name);
|
||||||
file.CopyTo(destFile, true);
|
file.CopyTo(destFile, true);
|
||||||
|
|
Loading…
Reference in New Issue