test(rate_limiter): use windows that cannot expire during the test

The bucket entry expires one window after the first request. With a 50
or 80 ms window, a slow CI run could lose it between two requests, so
inspect_bucket/3 returned {0, 5} (seen on #8021 with Elixir 1.17). The
reset test expires the bucket itself, so a long window costs nothing.
This commit is contained in:
Lain Soykaf 2026-10-27 16:10:14 +04:00
commit 985ad29724
No known key found for this signature in database
2 changed files with 5 additions and 2 deletions

View file

View file

@ -50,7 +50,9 @@ defmodule Pleroma.Web.Plugs.RateLimiterTest do
test "it restricts based on config values" do
limiter_name = :test_plug_opts
scale = 80
# Long enough that the bucket cannot expire during the test on slow CI.
# The test expires it explicitly with expire_ttl/2.
scale = 60_000
limit = 5
clear_config([Pleroma.Web.Endpoint, :http, :ip], {127, 0, 0, 1})
@ -184,7 +186,8 @@ defmodule Pleroma.Web.Plugs.RateLimiterTest do
test "can have limits separate from unauthenticated connections" do
limiter_name = :test_authenticated1
scale = 50
# Long enough that the bucket cannot expire during the test on slow CI.
scale = 60_000
limit = 5
clear_config([Pleroma.Web.Endpoint, :http, :ip], {8, 8, 8, 8})
clear_config([:rate_limit, limiter_name], [{1000, 1}, {scale, limit}])