aboutsummaryrefslogtreecommitdiff
path: root/Emby.Naming/Audio
diff options
context:
space:
mode:
authorBond_009 <bond.009@outlook.com>2020-04-19 11:57:03 +0200
committerBond_009 <bond.009@outlook.com>2020-04-19 11:57:03 +0200
commitd99536e99fe7e8d204ef93db39e519afbbfdad0a (patch)
tree3eaf10772b1b722fb98a8b78e6f42fe7b5bbb56c /Emby.Naming/Audio
parent16401ec7ae078b2b7c4c65e3792cb4c4159490d2 (diff)
Improved tests
Diffstat (limited to 'Emby.Naming/Audio')
-rw-r--r--Emby.Naming/Audio/AlbumParser.cs15
-rw-r--r--Emby.Naming/Audio/AudioFileParser.cs3
2 files changed, 12 insertions, 6 deletions
diff --git a/Emby.Naming/Audio/AlbumParser.cs b/Emby.Naming/Audio/AlbumParser.cs
index 33f4468d9..23ff8c3fa 100644
--- a/Emby.Naming/Audio/AlbumParser.cs
+++ b/Emby.Naming/Audio/AlbumParser.cs
@@ -1,3 +1,4 @@
+#nullable enable
#pragma warning disable CS1591
using System;
@@ -22,7 +23,7 @@ namespace Emby.Naming.Audio
{
var filename = Path.GetFileName(path);
- if (string.IsNullOrEmpty(filename))
+ if (path.Length == 0)
{
return false;
}
@@ -39,18 +40,22 @@ namespace Emby.Naming.Audio
filename = filename.Replace(')', ' ');
filename = Regex.Replace(filename, @"\s+", " ");
- filename = filename.TrimStart();
+ ReadOnlySpan<char> trimmedFilename = filename.TrimStart();
foreach (var prefix in _options.AlbumStackingPrefixes)
{
- if (filename.IndexOf(prefix, StringComparison.OrdinalIgnoreCase) != 0)
+ if (!trimmedFilename.StartsWith(prefix, StringComparison.OrdinalIgnoreCase))
{
continue;
}
- var tmp = filename.Substring(prefix.Length);
+ var tmp = trimmedFilename.Slice(prefix.Length).Trim();
- tmp = tmp.Trim().Split(' ').FirstOrDefault() ?? string.Empty;
+ int index = tmp.IndexOf(' ');
+ if (index != -1)
+ {
+ tmp = tmp.Slice(0, index);
+ }
if (int.TryParse(tmp, NumberStyles.Integer, CultureInfo.InvariantCulture, out _))
{
diff --git a/Emby.Naming/Audio/AudioFileParser.cs b/Emby.Naming/Audio/AudioFileParser.cs
index 25d5f8735..6b2f4be93 100644
--- a/Emby.Naming/Audio/AudioFileParser.cs
+++ b/Emby.Naming/Audio/AudioFileParser.cs
@@ -1,3 +1,4 @@
+#nullable enable
#pragma warning disable CS1591
using System;
@@ -11,7 +12,7 @@ namespace Emby.Naming.Audio
{
public static bool IsAudioFile(string path, NamingOptions options)
{
- var extension = Path.GetExtension(path) ?? string.Empty;
+ var extension = Path.GetExtension(path);
return options.AudioFileExtensions.Contains(extension, StringComparer.OrdinalIgnoreCase);
}
}