X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;f=test%2Fweb%2Fwebsub%2Fwebsub_test.exs;h=929acf5a2a57fd5dc82e64ce4aedc324ded6dbf1;hb=c623b4324deaf236334a0f77a81435b5bffadf3c;hp=0b8bfda2d1159916cc4669b8231e147748f829c6;hpb=ec34de0c1fd58942c8ecefddef92696750b70420;p=akkoma diff --git a/test/web/websub/websub_test.exs b/test/web/websub/websub_test.exs index 0b8bfda2d..929acf5a2 100644 --- a/test/web/websub/websub_test.exs +++ b/test/web/websub/websub_test.exs @@ -1,25 +1,23 @@ -defmodule Pleroma.Web.WebsubMock do - def verify(sub) do - {:ok, sub} - end -end +# Pleroma: A lightweight social networking server +# Copyright © 2017-2018 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Web.WebsubTest do use Pleroma.DataCase + use Oban.Testing, repo: Pleroma.Repo + + alias Pleroma.Tests.ObanHelpers + alias Pleroma.Web.Router.Helpers alias Pleroma.Web.Websub - alias Pleroma.Web.Websub.{WebsubServerSubscription, WebsubClientSubscription} + alias Pleroma.Web.Websub.WebsubClientSubscription + alias Pleroma.Web.Websub.WebsubServerSubscription + alias Pleroma.Workers.SubscriberWorker + import Pleroma.Factory - alias Pleroma.Web.Router.Helpers import Tesla.Mock setup do - mock fn - %{method: :get, url: "https://mastodon.social/users/lambadalambda.atom"} -> - %Tesla.Env{status: 200, body: File.read!("test/fixtures/lambadalambda.atom")} - %{method: :post, url: "http://example.org/needs_refresh"} -> - %Tesla.Env{status: 200, body: ""} - end - + mock(fn env -> apply(HttpRequestMock, :request, [env]) end) :ok end @@ -184,7 +182,7 @@ defmodule Pleroma.Web.WebsubTest do websub = insert(:websub_client_subscription, %{hub: hub, topic: topic}) poster = fn ^hub, {:form, _data}, _headers -> - {:ok, %{status_code: 202}} + {:ok, %{status: 202}} end {:error, websub} = Websub.request_subscription(websub, poster, 1000) @@ -193,7 +191,7 @@ defmodule Pleroma.Web.WebsubTest do websub = insert(:websub_client_subscription, %{hub: hub, topic: topic}) poster = fn ^hub, {:form, _data}, _headers -> - {:ok, %{status_code: 400}} + {:ok, %{status: 400}} end {:error, websub} = Websub.request_subscription(websub, poster, 1000) @@ -229,6 +227,7 @@ defmodule Pleroma.Web.WebsubTest do }) _refresh = Websub.refresh_subscriptions() + ObanHelpers.perform(all_enqueued(worker: SubscriberWorker)) assert still_good == Repo.get(WebsubClientSubscription, still_good.id) refute needs_refresh == Repo.get(WebsubClientSubscription, needs_refresh.id)