FF-1615: Move and Copy now use common method to get additional files

This commit is contained in:
John Andrews
2024-06-17 08:41:13 +12:00
parent dc70c91ea9
commit 4ee50eeb20
12 changed files with 328 additions and 158 deletions

View File

@@ -0,0 +1,49 @@
#if(DEBUG)
using System.IO;
using FileFlows.BasicNodes.Helpers;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace BasicNodes.Tests;
/// <summary>
/// Tests fot he additional files method
/// </summary>
[TestClass]
public class AdditionalFilesTests: TestBase
{
[TestMethod]
public void Basic()
{
var fileService = new LocalFileService();
var dir = Path.Combine(TempPath, Guid.NewGuid().ToString());
Directory.CreateDirectory(dir);
CreateFile(dir, "my movie.mkv");
CreateFile(dir, "my movie.srt");
CreateFile(dir, "my movie.en.sub");
CreateFile(dir, "my movie.it.srt");
CreateFile(dir, "not my movie.en.sub");
CreateFile(dir, "not my movie.sub");
CreateFile(dir, "not my movie.srt");
var results = FolderHelper.GetAdditionalFiles(Logger, fileService,
(s, b, b2) => s,
"my movie", dir, [".srt", ".sub"]);
Assert.AreEqual(3, results.Count);
Assert.IsTrue(results.Contains(Path.Combine(dir, "my movie.srt")));
Assert.IsTrue(results.Contains(Path.Combine(dir, "my movie.en.sub")));
Assert.IsTrue(results.Contains(Path.Combine(dir, "my movie.it.srt")));
}
/// <summary>
/// Creates a file
/// </summary>
/// <param name="directory">the directory to create the file in</param>
/// <param name="name">the name of the file</param>
private void CreateFile(string directory, string name)
{
System.IO.File.WriteAllText(Path.Combine(directory, name), "");
}
}
#endif