Remote Timeline: add Streaming support
[akkoma] / test / support / captcha_mock.ex
index 9d79f2e956f59de2d9f91430ff2ef3a2b8799ca7..2ed2ba3b405a751113b0b90682dae18423b442a4 100644 (file)
@@ -1,10 +1,28 @@
+# Pleroma: A lightweight social networking server
+# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
+# SPDX-License-Identifier: AGPL-3.0-only
+
 defmodule Pleroma.Captcha.Mock do
   alias Pleroma.Captcha.Service
   @behaviour Service
 
+  @solution "63615261b77f5354fb8c4e4986477555"
+
+  def solution, do: @solution
+
   @impl Service
-  def new(), do: %{type: :mock}
+  def new,
+    do: %{
+      type: :mock,
+      token: "afa1815e14e29355e6c8f6b143a39fa2",
+      answer_data: @solution,
+      url: "https://example.org/captcha.png",
+      seconds_valid: 300
+    }
 
   @impl Service
-  def validate(_token, _captcha), do: true
+  def validate(_token, captcha, captcha) when not is_nil(captcha), do: :ok
+
+  def validate(_token, captcha, answer),
+    do: {:error, "Invalid CAPTCHA captcha: #{inspect(captcha)} ; answer: #{inspect(answer)}"}
 end