summaryrefslogtreecommitdiff
path: root/src/SMAPI.Tests/Utilities/PathUtilitiesTests.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/SMAPI.Tests/Utilities/PathUtilitiesTests.cs')
-rw-r--r--src/SMAPI.Tests/Utilities/PathUtilitiesTests.cs26
1 files changed, 24 insertions, 2 deletions
diff --git a/src/SMAPI.Tests/Utilities/PathUtilitiesTests.cs b/src/SMAPI.Tests/Utilities/PathUtilitiesTests.cs
index 5a342974..c18f47a5 100644
--- a/src/SMAPI.Tests/Utilities/PathUtilitiesTests.cs
+++ b/src/SMAPI.Tests/Utilities/PathUtilitiesTests.cs
@@ -1,3 +1,4 @@
+using System.IO;
using NUnit.Framework;
using StardewModdingAPI.Toolkit.Utilities;
@@ -175,9 +176,30 @@ namespace SMAPI.Tests.Utilities
}
/****
- ** NormalizePathSeparators
+ ** NormalizeAssetName
****/
- [Test(Description = "Assert that PathUtilities.NormalizePathSeparators normalizes paths correctly.")]
+ [Test(Description = "Assert that PathUtilities.NormalizeAssetName normalizes paths correctly.")]
+ [TestCaseSource(nameof(PathUtilitiesTests.SamplePaths))]
+ public void NormalizeAssetName(SamplePath path)
+ {
+ if (Path.IsPathRooted(path.OriginalPath) || path.OriginalPath.StartsWith("/") || path.OriginalPath.StartsWith("\\"))
+ Assert.Ignore("Absolute paths can't be used as asset names.");
+
+ // act
+ string normalized = PathUtilities.NormalizeAssetName(path.OriginalPath);
+
+ // assert
+#if SMAPI_FOR_WINDOWS
+ Assert.AreEqual(path.NormalizedOnWindows, normalized);
+#else
+ Assert.AreEqual(path.NormalizedOnUnix, normalized);
+#endif
+ }
+
+ /****
+ ** NormalizePath
+ ****/
+ [Test(Description = "Assert that PathUtilities.NormalizePath normalizes paths correctly.")]
[TestCaseSource(nameof(PathUtilitiesTests.SamplePaths))]
public void NormalizePath(SamplePath path)
{