You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1.3 KiB
36 lines
1.3 KiB
using System.IO.Abstractions;
|
|
using System.IO.Abstractions.TestingHelpers;
|
|
using System.Reflection;
|
|
|
|
// ReSharper disable MemberCanBePrivate.Global
|
|
// ReSharper disable UnusedMember.Global
|
|
|
|
namespace Recyclarr.Common.TestLibrary;
|
|
|
|
public static class CommonMockFileSystemExtensions
|
|
{
|
|
public static void AddFileFromResource(this MockFileSystem fs, string resourceFilename)
|
|
{
|
|
fs.AddFileFromResource(resourceFilename, resourceFilename, Assembly.GetCallingAssembly());
|
|
}
|
|
|
|
public static void AddFileFromResource(this MockFileSystem fs, IFileInfo file, string resourceFilename,
|
|
string resourceDir = "Data")
|
|
{
|
|
fs.AddFileFromResource(file.FullName, resourceFilename, Assembly.GetCallingAssembly(), resourceDir);
|
|
}
|
|
|
|
public static void AddFileFromResource(this MockFileSystem fs, string file, string resourceFilename,
|
|
string resourceDir = "Data")
|
|
{
|
|
fs.AddFileFromResource(file, resourceFilename, Assembly.GetCallingAssembly(), resourceDir);
|
|
}
|
|
|
|
public static void AddFileFromResource(this MockFileSystem fs, string file, string resourceFilename,
|
|
Assembly assembly, string resourceDir = "Data")
|
|
{
|
|
var resourceReader = new ResourceDataReader(assembly, resourceDir);
|
|
fs.AddFile(file, new MockFileData(resourceReader.ReadData(resourceFilename)));
|
|
}
|
|
}
|