Merge branch 'develop' into 'remove-twitter-api'
[akkoma] / test / web / oauth / ldap_authorization_test.exs
index 5bf7eb93c60597dd8d034c54688470e535d11ded..011642c0874d13dc31e0455bffd1ab5022d73e4c 100644 (file)
@@ -1,5 +1,5 @@
 # Pleroma: A lightweight social networking server
-# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
+# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Web.OAuth.LDAPAuthorizationTest do
@@ -10,26 +10,16 @@ defmodule Pleroma.Web.OAuth.LDAPAuthorizationTest do
   import ExUnit.CaptureLog
   import Mock
 
-  setup_all do
-    ldap_authenticator =
-      Pleroma.Config.get(Pleroma.Web.Auth.Authenticator, Pleroma.Web.Auth.PleromaAuthenticator)
+  @skip if !Code.ensure_loaded?(:eldap), do: :skip
 
-    ldap_enabled = Pleroma.Config.get([:ldap, :enabled])
+  setup_all do: clear_config([:ldap, :enabled], true)
 
-    on_exit(fn ->
-      Pleroma.Config.put(Pleroma.Web.Auth.Authenticator, ldap_authenticator)
-      Pleroma.Config.put([:ldap, :enabled], ldap_enabled)
-    end)
-
-    Pleroma.Config.put(Pleroma.Web.Auth.Authenticator, Pleroma.Web.Auth.LDAPAuthenticator)
-    Pleroma.Config.put([:ldap, :enabled], true)
-
-    :ok
-  end
+  setup_all do: clear_config(Pleroma.Web.Auth.Authenticator, Pleroma.Web.Auth.LDAPAuthenticator)
 
+  @tag @skip
   test "authorizes the existing user using LDAP credentials" do
     password = "testpassword"
-    user = insert(:user, password_hash: Comeonin.Pbkdf2.hashpwsalt(password))
+    user = insert(:user, password_hash: Pbkdf2.hash_pwd_salt(password))
     app = insert(:oauth_app, scopes: ["read", "write"])
 
     host = Pleroma.Config.get([:ldap, :host]) |> to_charlist
@@ -65,6 +55,7 @@ defmodule Pleroma.Web.OAuth.LDAPAuthorizationTest do
     end
   end
 
+  @tag @skip
   test "creates a new user after successful LDAP authorization" do
     password = "testpassword"
     user = build(:user)
@@ -110,9 +101,10 @@ defmodule Pleroma.Web.OAuth.LDAPAuthorizationTest do
     end
   end
 
+  @tag @skip
   test "falls back to the default authorization when LDAP is unavailable" do
     password = "testpassword"
-    user = insert(:user, password_hash: Comeonin.Pbkdf2.hashpwsalt(password))
+    user = insert(:user, password_hash: Pbkdf2.hash_pwd_salt(password))
     app = insert(:oauth_app, scopes: ["read", "write"])
 
     host = Pleroma.Config.get([:ldap, :host]) |> to_charlist
@@ -153,9 +145,10 @@ defmodule Pleroma.Web.OAuth.LDAPAuthorizationTest do
     end
   end
 
+  @tag @skip
   test "disallow authorization for wrong LDAP credentials" do
     password = "testpassword"
-    user = insert(:user, password_hash: Comeonin.Pbkdf2.hashpwsalt(password))
+    user = insert(:user, password_hash: Pbkdf2.hash_pwd_salt(password))
     app = insert(:oauth_app, scopes: ["read", "write"])
 
     host = Pleroma.Config.get([:ldap, :host]) |> to_charlist