diff options
author | Mark Felder <feld@feld.me> | 2024-06-17 10:08:54 -0400 |
---|---|---|
committer | Mark Felder <feld@feld.me> | 2024-06-17 10:41:14 -0400 |
commit | 9c6763725547e4927d09cf3cd8d33949a28c4824 (patch) | |
tree | 2769b9280d802eff2e8b49e0ef3ed89f446ff8b1 /test | |
parent | 825541b27c71d3a9b6f597a9934151831c52f6e5 (diff) | |
download | pleroma-9c6763725547e4927d09cf3cd8d33949a28c4824.tar.gz pleroma-9c6763725547e4927d09cf3cd8d33949a28c4824.zip |
Refactor the async user refreshing to use Oban
Previous implementation could cause duplicate simultaneous profile fetches which is not polite.
Diffstat (limited to 'test')
-rw-r--r-- | test/pleroma/user_test.exs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/test/pleroma/user_test.exs b/test/pleroma/user_test.exs index 0da9969d0..031621875 100644 --- a/test/pleroma/user_test.exs +++ b/test/pleroma/user_test.exs @@ -953,8 +953,12 @@ defmodule Pleroma.UserTest do {:ok, user} = User.get_or_fetch_by_ap_id("http://mastodon.example.org/users/admin") - # User was updated async, fetch from cache now - updated_user = User.get_cached_by_ap_id(user.ap_id) + # Oban job was generated to refresh the stale user + assert_enqueued(worker: "Pleroma.Workers.UserRefreshWorker", args: %{"ap_id" => user.ap_id}) + + # Run job to refresh the user; just capture its output instead of fetching it again + assert {:ok, updated_user} = + perform_job(Pleroma.Workers.UserRefreshWorker, %{"ap_id" => user.ap_id}) assert updated_user.inbox |