diff options
author | nulltoken <emeric.fermas@gmail.com> | 2015-04-18 12:50:35 +0300 |
---|---|---|
committer | nulltoken <emeric.fermas@gmail.com> | 2015-04-18 12:50:35 +0300 |
commit | e6e98bac6aa6a76b27b1eba95b649d44a72ae36e (patch) | |
tree | 4868a18f138c1ba76d83ce8479ab06f665e58b72 | |
parent | 61adafd2bacb8178f2ef5043ac121de603dc34c0 (diff) | |
parent | 1a2528fb08a43e0fb315edf935dfae1d32d97a4a (diff) |
Merge pull request #1022 from ThomasBarnekow/refactor-directory-helper
Refactor DirectoryHelper
-rw-r--r-- | LibGit2Sharp.Tests/TestHelpers/DirectoryHelper.cs | 29 |
1 files changed, 10 insertions, 19 deletions
diff --git a/LibGit2Sharp.Tests/TestHelpers/DirectoryHelper.cs b/LibGit2Sharp.Tests/TestHelpers/DirectoryHelper.cs index 71ce0ede..66c1d594 100644 --- a/LibGit2Sharp.Tests/TestHelpers/DirectoryHelper.cs +++ b/LibGit2Sharp.Tests/TestHelpers/DirectoryHelper.cs @@ -15,6 +15,8 @@ namespace LibGit2Sharp.Tests.TestHelpers { "gitmodules", ".gitmodules" }, }; + private static readonly Type[] whitelist = { typeof(IOException), typeof(UnauthorizedAccessException) }; + public static void CopyFilesRecursively(DirectoryInfo source, DirectoryInfo target) { // From http://stackoverflow.com/questions/58744/best-way-to-copy-the-entire-contents-of-a-directory-in-c/58779#58779 @@ -34,15 +36,6 @@ namespace LibGit2Sharp.Tests.TestHelpers return toRename.ContainsKey(name) ? toRename[name] : name; } - public static void DeleteSubdirectories(string parentPath) - { - string[] dirs = Directory.GetDirectories(parentPath); - foreach (string dir in dirs) - { - DeleteDirectory(dir); - } - } - public static void DeleteDirectory(string directoryPath) { // From http://stackoverflow.com/questions/329355/cannot-delete-directory-with-directory-deletepath-true/329502#329502 @@ -53,28 +46,26 @@ namespace LibGit2Sharp.Tests.TestHelpers return; } NormalizeAttributes(directoryPath); - TryDeleteDirectory(directoryPath, maxAttempts: 5, initialTimeout: 16, timeoutFactor: 2); + DeleteDirectory(directoryPath, maxAttempts: 5, initialTimeout: 16, timeoutFactor: 2); } private static void NormalizeAttributes(string directoryPath) { - string[] files = Directory.GetFiles(directoryPath); - string[] dirs = Directory.GetDirectories(directoryPath); + string[] filePaths = Directory.GetFiles(directoryPath); + string[] subdirectoryPaths = Directory.GetDirectories(directoryPath); - foreach (string file in files) + foreach (string filePath in filePaths) { - File.SetAttributes(file, FileAttributes.Normal); + File.SetAttributes(filePath, FileAttributes.Normal); } - foreach (string dir in dirs) + foreach (string subdirectoryPath in subdirectoryPaths) { - NormalizeAttributes(dir); + NormalizeAttributes(subdirectoryPath); } File.SetAttributes(directoryPath, FileAttributes.Normal); } - private static readonly Type[] whitelist = { typeof(IOException), typeof(UnauthorizedAccessException) }; - - private static void TryDeleteDirectory(string directoryPath, int maxAttempts, int initialTimeout, int timeoutFactor) + private static void DeleteDirectory(string directoryPath, int maxAttempts, int initialTimeout, int timeoutFactor) { for (int attempt = 1; attempt <= maxAttempts; attempt++) { |