summaryrefslogtreecommitdiff
path: root/test/pleroma/workers/purge_expired_filter_test.exs
blob: e8d45aaaae5fad10893701c07bfba336c966bb14 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# Pleroma: A lightweight social networking server
# Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only

defmodule Pleroma.Workers.PurgeExpiredFilterTest do
  use Pleroma.DataCase, async: true
  use Oban.Testing, repo: Repo

  import Pleroma.Factory

  test "purges expired filter" do
    %{id: user_id} = insert(:user)

    {:ok, %{id: id}} =
      Pleroma.Filter.create(%{
        user_id: user_id,
        phrase: "cofe",
        context: ["home"],
        expires_in: 600
      })

    assert_enqueued(
      worker: Pleroma.Workers.PurgeExpiredFilter,
      args: %{filter_id: id}
    )

    assert {:ok, %{id: ^id}} =
             perform_job(Pleroma.Workers.PurgeExpiredFilter, %{
               filter_id: id
             })

    assert Repo.aggregate(Pleroma.Filter, :count, :id) == 0
  end
end