aboutsummaryrefslogtreecommitdiff
path: root/test/mfa
diff options
context:
space:
mode:
authorlain <lain@soykaf.club>2020-05-07 08:14:54 +0000
committerlain <lain@soykaf.club>2020-05-07 08:14:54 +0000
commitf4c2bf0985f3d65d9caa6f02a71c89db9f070fb1 (patch)
treea7f4ece6dcd0a534b464e455fa382d3ebd8f4d07 /test/mfa
parent68a126317d7cdd670c8e244319da08ff85639d33 (diff)
parent3d0c567fbc3506770fdac5f1269c45b244928747 (diff)
downloadpleroma-f4c2bf0985f3d65d9caa6f02a71c89db9f070fb1.tar.gz
Merge branch 'issue/209' into 'develop'
[#209] 2FA/two_factor_authentication support See merge request pleroma/pleroma!801
Diffstat (limited to 'test/mfa')
-rw-r--r--test/mfa/backup_codes_test.exs11
-rw-r--r--test/mfa/totp_test.exs17
2 files changed, 28 insertions, 0 deletions
diff --git a/test/mfa/backup_codes_test.exs b/test/mfa/backup_codes_test.exs
new file mode 100644
index 000000000..7bc01b36b
--- /dev/null
+++ b/test/mfa/backup_codes_test.exs
@@ -0,0 +1,11 @@
+defmodule Pleroma.MFA.BackupCodesTest do
+ use Pleroma.DataCase
+
+ alias Pleroma.MFA.BackupCodes
+
+ test "generate backup codes" do
+ codes = BackupCodes.generate(number_of_codes: 2, length: 4)
+
+ assert [<<_::bytes-size(4)>>, <<_::bytes-size(4)>>] = codes
+ end
+end
diff --git a/test/mfa/totp_test.exs b/test/mfa/totp_test.exs
new file mode 100644
index 000000000..50153d208
--- /dev/null
+++ b/test/mfa/totp_test.exs
@@ -0,0 +1,17 @@
+defmodule Pleroma.MFA.TOTPTest do
+ use Pleroma.DataCase
+
+ alias Pleroma.MFA.TOTP
+
+ test "create provisioning_uri to generate qrcode" do
+ uri =
+ TOTP.provisioning_uri("test-secrcet", "test@example.com",
+ issuer: "Plerome-42",
+ digits: 8,
+ period: 60
+ )
+
+ assert uri ==
+ "otpauth://totp/test@example.com?digits=8&issuer=Plerome-42&period=60&secret=test-secrcet"
+ end
+end