mirror of
https://github.com/Kareadita/Kavita.git
synced 2025-07-09 03:04:19 -04:00
Fixed a bug in IsImage and IsArchive where I was using a contains instead of matching the regex.
This commit is contained in:
parent
10c8ea34fe
commit
e9dfc1bda0
@ -8,15 +8,15 @@ namespace API.Tests.Services
|
|||||||
{
|
{
|
||||||
public class CacheServiceTests
|
public class CacheServiceTests
|
||||||
{
|
{
|
||||||
private readonly CacheService _cacheService;
|
// private readonly CacheService _cacheService;
|
||||||
private readonly ILogger<CacheService> _logger = Substitute.For<ILogger<CacheService>>();
|
// private readonly ILogger<CacheService> _logger = Substitute.For<ILogger<CacheService>>();
|
||||||
private readonly IUnitOfWork _unitOfWork = Substitute.For<IUnitOfWork>();
|
// private readonly IUnitOfWork _unitOfWork = Substitute.For<IUnitOfWork>();
|
||||||
private readonly IArchiveService _archiveService = Substitute.For<IArchiveService>();
|
// private readonly IArchiveService _archiveService = Substitute.For<IArchiveService>();
|
||||||
private readonly IDirectoryService _directoryService = Substitute.For<DirectoryService>();
|
// private readonly IDirectoryService _directoryService = Substitute.For<DirectoryService>();
|
||||||
|
|
||||||
public CacheServiceTests()
|
public CacheServiceTests()
|
||||||
{
|
{
|
||||||
_cacheService = new CacheService(_logger, _unitOfWork, _archiveService, _directoryService);
|
//_cacheService = new CacheService(_logger, _unitOfWork, _archiveService, _directoryService);
|
||||||
}
|
}
|
||||||
|
|
||||||
//string GetCachedPagePath(Volume volume, int page)
|
//string GetCachedPagePath(Volume volume, int page)
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using System.Reflection;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using API.Entities;
|
using API.Entities;
|
||||||
|
|
||||||
@ -10,6 +11,8 @@ namespace API.Parser
|
|||||||
{
|
{
|
||||||
public static readonly string MangaFileExtensions = @"\.cbz|\.zip"; // |\.rar|\.cbr
|
public static readonly string MangaFileExtensions = @"\.cbz|\.zip"; // |\.rar|\.cbr
|
||||||
public static readonly string ImageFileExtensions = @"\.png|\.jpeg|\.jpg|\.gif";
|
public static readonly string ImageFileExtensions = @"\.png|\.jpeg|\.jpg|\.gif";
|
||||||
|
private static readonly Regex ImageRegex = new Regex(ImageFileExtensions, RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
||||||
|
private static readonly Regex MangaFileRegex = new Regex(MangaFileExtensions, RegexOptions.IgnoreCase | RegexOptions.Compiled);
|
||||||
|
|
||||||
//?: is a non-capturing group in C#, else anything in () will be a group
|
//?: is a non-capturing group in C#, else anything in () will be a group
|
||||||
private static readonly Regex[] MangaVolumeRegex = new[]
|
private static readonly Regex[] MangaVolumeRegex = new[]
|
||||||
@ -388,13 +391,13 @@ namespace API.Parser
|
|||||||
public static bool IsArchive(string filePath)
|
public static bool IsArchive(string filePath)
|
||||||
{
|
{
|
||||||
var fileInfo = new FileInfo(filePath);
|
var fileInfo = new FileInfo(filePath);
|
||||||
return MangaFileExtensions.Contains(fileInfo.Extension);
|
return MangaFileRegex.IsMatch(fileInfo.Extension);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static bool IsImage(string filePath)
|
public static bool IsImage(string filePath)
|
||||||
{
|
{
|
||||||
var fileInfo = new FileInfo(filePath);
|
var fileInfo = new FileInfo(filePath);
|
||||||
return ImageFileExtensions.Contains(fileInfo.Extension);
|
return ImageRegex.IsMatch(fileInfo.Extension);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static int MinimumNumberFromRange(string range)
|
public static int MinimumNumberFromRange(string range)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user