Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions cpp/Platform.IO/FileHelpers.h
Original file line number Diff line number Diff line change
Expand Up @@ -69,11 +69,11 @@
}
}

public: static void DeleteAll(std::string directory) { DeleteAll(directory, "*"); }
public: static void DeleteFiles(std::string directory) { DeleteFiles(directory, "*"); }

public: static void DeleteAll(std::string directory, std::string searchPattern) { DeleteAll(directory, searchPattern, SearchOption.TopDirectoryOnly); }
public: static void DeleteFiles(std::string directory, std::string searchPattern) { DeleteFiles(directory, searchPattern, SearchOption.TopDirectoryOnly); }

public: static void DeleteAll(std::string directory, std::string searchPattern, SearchOption searchOption)
public: static void DeleteFiles(std::string directory, std::string searchPattern, SearchOption searchOption)
{
foreach (auto file in Directory.EnumerateFiles(directory, searchPattern, searchOption))
{
Expand Down
32 changes: 32 additions & 0 deletions csharp/Platform.IO.Tests/FileHelpersTests.cs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
using System;
using System.IO;
using Xunit;

Expand All @@ -15,5 +16,36 @@ public void WriteReadTest()
Assert.Equal(readValue, originalValue);
File.Delete(temporaryFile);
}

[Fact]
public void DeleteFilesTest()
{
var tempDir = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
Directory.CreateDirectory(tempDir);

var testFile1 = Path.Combine(tempDir, "test1.txt");
var testFile2 = Path.Combine(tempDir, "test2.txt");
var testFile3 = Path.Combine(tempDir, "test3.log");

File.WriteAllText(testFile1, "test content");
File.WriteAllText(testFile2, "test content");
File.WriteAllText(testFile3, "test content");

Assert.True(File.Exists(testFile1));
Assert.True(File.Exists(testFile2));
Assert.True(File.Exists(testFile3));

FileHelpers.DeleteFiles(tempDir, "*.txt");

Assert.False(File.Exists(testFile1));
Assert.False(File.Exists(testFile2));
Assert.True(File.Exists(testFile3));

FileHelpers.DeleteFiles(tempDir);

Assert.False(File.Exists(testFile3));

Directory.Delete(tempDir);
}
}
}
6 changes: 3 additions & 3 deletions csharp/Platform.IO/FileHelpers.cs
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ public static void SetSize(string path, long size)
/// <para>Путь к директории для очистки.</para>
/// </param>
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void DeleteAll(string directory) => DeleteAll(directory, "*");
public static void DeleteFiles(string directory) => DeleteFiles(directory, "*");

/// <summary>
/// <para>Removes files from the directory at the path <paramref name="directory"/> according to the <paramref name="searchPattern"/>.</para>
Expand All @@ -222,7 +222,7 @@ public static void SetSize(string path, long size)
/// <para>Шаблон поиска для удаляемых файлов в директории находящейся по пути <paramref name="directory"/>.</para>
/// </param>
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void DeleteAll(string directory, string searchPattern) => DeleteAll(directory, searchPattern, SearchOption.TopDirectoryOnly);
public static void DeleteFiles(string directory, string searchPattern) => DeleteFiles(directory, searchPattern, SearchOption.TopDirectoryOnly);

/// <summary>
/// <para>Removes files from the directory at the path <paramref name="directory"/> according to the <paramref name="searchPattern"/> and the <paramref name="searchOption"/>.</para>
Expand All @@ -241,7 +241,7 @@ public static void SetSize(string path, long size)
/// <para>Значение <see cref="SearchOption"/> определяющее искать ли только в текущей директории находящейся по пути <paramref name="directory"/>, или также во всех субдиректориях.</para>
/// </param>
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void DeleteAll(string directory, string searchPattern, SearchOption searchOption)
public static void DeleteFiles(string directory, string searchPattern, SearchOption searchOption)
{
foreach (var file in Directory.EnumerateFiles(directory, searchPattern, searchOption))
{
Expand Down
Loading