defmodule Plausible.CondolidatedView.CacheSyncTest do use Plausible.DataCase, async: false on_ee do alias Plausible.ConsolidatedView.Cache setup %{test_pid: test_pid} do Plausible.Test.Support.Sentry.setup(test_pid) end test "big views get cropped up to 14k", %{test: test} do {:ok, _pid} = start_test_cache(test) Plausible.Cache.Adapter.put(test, "key", Enum.to_list(1..20_000)) site_ids = Cache.get("key", cache_name: test, force?: true) assert length(site_ids) == 14_000 assert [ %{ extra: %{key: "key", sites: 20_000}, message: %{formatted: "Consolidated View crop warning"} } ] = Sentry.Test.pop_sentry_reports() end defp start_test_cache(cache_name) do %{start: {m, f, a}} = Cache.child_spec(cache_name: cache_name) apply(m, f, a) end end end