Correct ttl syntax for new cachex
This commit is contained in:
parent
3c384c1b76
commit
ec7e9da734
2 changed files with 4 additions and 7 deletions
|
@ -49,7 +49,7 @@ def get(url, headers \\ [], options \\ []) do
|
||||||
timestamp = next_backoff_timestamp(env)
|
timestamp = next_backoff_timestamp(env)
|
||||||
ttl = Timex.diff(timestamp, DateTime.utc_now(), :seconds)
|
ttl = Timex.diff(timestamp, DateTime.utc_now(), :seconds)
|
||||||
# we will cache the host for 5 minutes
|
# we will cache the host for 5 minutes
|
||||||
@cachex.put(@backoff_cache, host, true, ttl)
|
@cachex.put(@backoff_cache, host, true, ttl: ttl)
|
||||||
{:error, :ratelimit}
|
{:error, :ratelimit}
|
||||||
|
|
||||||
_ ->
|
_ ->
|
||||||
|
|
|
@ -17,8 +17,7 @@ test "should return {:ok, env} when not rate limited" do
|
||||||
test "should return {:error, env} when rate limited" do
|
test "should return {:error, env} when rate limited" do
|
||||||
# Shove a value into the cache to simulate a rate limit
|
# Shove a value into the cache to simulate a rate limit
|
||||||
Cachex.put(@backoff_cache, "akkoma.dev", true)
|
Cachex.put(@backoff_cache, "akkoma.dev", true)
|
||||||
assert {:error, env} = Backoff.get("https://akkoma.dev/api/v1/instance")
|
assert {:error, :ratelimit} = Backoff.get("https://akkoma.dev/api/v1/instance")
|
||||||
assert env.status == 429
|
|
||||||
end
|
end
|
||||||
|
|
||||||
test "should insert a value into the cache when rate limited" do
|
test "should insert a value into the cache when rate limited" do
|
||||||
|
@ -27,8 +26,7 @@ test "should insert a value into the cache when rate limited" do
|
||||||
{:ok, %Tesla.Env{status: 429, body: "Rate limited"}}
|
{:ok, %Tesla.Env{status: 429, body: "Rate limited"}}
|
||||||
end)
|
end)
|
||||||
|
|
||||||
assert {:error, env} = Backoff.get("https://ratelimited.dev/api/v1/instance")
|
assert {:error, :ratelimit} = Backoff.get("https://ratelimited.dev/api/v1/instance")
|
||||||
assert env.status == 429
|
|
||||||
assert {:ok, true} = Cachex.get(@backoff_cache, "ratelimited.dev")
|
assert {:ok, true} = Cachex.get(@backoff_cache, "ratelimited.dev")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -46,8 +44,7 @@ test "should parse the value of x-ratelimit-reset, if present" do
|
||||||
}}
|
}}
|
||||||
end)
|
end)
|
||||||
|
|
||||||
assert {:error, env} = Backoff.get("https://ratelimited.dev/api/v1/instance")
|
assert {:error, :ratelimit} = Backoff.get("https://ratelimited.dev/api/v1/instance")
|
||||||
assert env.status == 429
|
|
||||||
assert {:ok, true} = Cachex.get(@backoff_cache, "ratelimited.dev")
|
assert {:ok, true} = Cachex.get(@backoff_cache, "ratelimited.dev")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue