aboutsummaryrefslogtreecommitdiff
path: root/tests/Jellyfin.Common.Tests/PasswordHashTests.cs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/Jellyfin.Common.Tests/PasswordHashTests.cs')
-rw-r--r--tests/Jellyfin.Common.Tests/PasswordHashTests.cs29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/Jellyfin.Common.Tests/PasswordHashTests.cs b/tests/Jellyfin.Common.Tests/PasswordHashTests.cs
new file mode 100644
index 000000000..5fa86f3bd
--- /dev/null
+++ b/tests/Jellyfin.Common.Tests/PasswordHashTests.cs
@@ -0,0 +1,29 @@
+using MediaBrowser.Common.Cryptography;
+using Xunit;
+using static MediaBrowser.Common.HexHelper;
+
+namespace Jellyfin.Common.Tests
+{
+ public class PasswordHashTests
+ {
+ [Theory]
+ [InlineData("$PBKDF2$iterations=1000$62FBA410AFCA5B4475F35137AB2E8596B127E4D927BA23F6CC05C067E897042D",
+ "PBKDF2",
+ "",
+ "62FBA410AFCA5B4475F35137AB2E8596B127E4D927BA23F6CC05C067E897042D")]
+ public void ParseTest(string passwordHash, string id, string salt, string hash)
+ {
+ var pass = PasswordHash.Parse(passwordHash);
+ Assert.Equal(id, pass.Id);
+ Assert.Equal(salt, ToHexString(pass.Salt));
+ Assert.Equal(hash, ToHexString(pass.Hash));
+ }
+
+ [Theory]
+ [InlineData("$PBKDF2$iterations=1000$62FBA410AFCA5B4475F35137AB2E8596B127E4D927BA23F6CC05C067E897042D")]
+ public void ToStringTest(string passwordHash)
+ {
+ Assert.Equal(passwordHash, PasswordHash.Parse(passwordHash).ToString());
+ }
+ }
+}