mirror of
https://github.com/plausible/analytics.git
synced 2024-09-11 09:56:02 +03:00
* local CSV exports/imports and S3 updates * credo * dialyzer * refactor input columns * fix ci minio/clickhouse tests * Update lib/plausible_web/live/csv_export.ex Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com> * fix date range filter in export_pages_q and process only pageviews * remove toTimeZone(zero_timestamp) note * use SiteImport.pending(), SiteImport.importing() * escape [SiteImport.pending(), SiteImport.importing()] * use random s3 keys for imports to avoid collisions (sometimes makes the upload get stuck) * clamp import date ranges * site is already in assigns * recompute cutoff date each time * use toDate(timestamp[, timezone]) shortcut * show alreats on export cancel/delete and extract hint into a component * switch to Imported.clamp_dates/4 * reprocess tables when imports are added * recompute cutoff_date on each call * actually use clamped_date_range on submit * add warning message * add expiry rules to buckets in make minio * add site_id to imports notifications and use it in csv_importer * try/catch safer * return :ok * date range is not available when no uploads * improve ui and warning messages * use Generic.notice * fix flaky exports test * begin tests * Improve `Importer` notification payload shape --------- Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com>
28 lines
945 B
Elixir
28 lines
945 B
Elixir
{:ok, _} = Application.ensure_all_started(:ex_machina)
|
|
Mox.defmock(Plausible.HTTPClient.Mock, for: Plausible.HTTPClient.Interface)
|
|
Application.ensure_all_started(:double)
|
|
FunWithFlags.enable(:imports_exports)
|
|
FunWithFlags.enable(:shield_pages)
|
|
|
|
# Temporary flag to test `experimental_reduced_joins` flag on all tests.
|
|
if System.get_env("TEST_EXPERIMENTAL_REDUCED_JOINS") == "1" do
|
|
FunWithFlags.enable(:experimental_reduced_joins)
|
|
else
|
|
FunWithFlags.disable(:experimental_reduced_joins)
|
|
end
|
|
|
|
Ecto.Adapters.SQL.Sandbox.mode(Plausible.Repo, :manual)
|
|
|
|
# warn about minio if it's included in tests but not running
|
|
if :minio in Keyword.fetch!(ExUnit.configuration(), :include) do
|
|
Plausible.TestUtils.ensure_minio()
|
|
end
|
|
|
|
if Mix.env() == :small_test do
|
|
IO.puts("Test mode: SMALL")
|
|
ExUnit.configure(exclude: [:slow, :minio, :full_build_only])
|
|
else
|
|
IO.puts("Test mode: FULL")
|
|
ExUnit.configure(exclude: [:slow, :minio, :small_build_only])
|
|
end
|