analytics / test /plausible /stats /query /api_query_parser_test.exs
Leon4gr45's picture
Upload folder using huggingface_hub (part 5)
c9c49ab verified
Raw
History Blame Contribute Delete
1.06 kB
defmodule Plausible.Stats.ApiQueryParserTest do
use Plausible.DataCase
import Plausible.Stats.ApiQueryParser
alias Plausible.Stats.QueryError
test "parsing empty map fails" do
assert {:error,
%QueryError{
code: :failed_schema_validation,
message: "#: Required properties site_id, metrics, date_range were not present."
}} =
parse(%{})
end
test "invalid metric passed" do
params = %{
"site_id" => "example.com",
"metrics" => ["visitors", "event:name"],
"date_range" => "all"
}
assert {:error,
%QueryError{
code: :failed_schema_validation,
message: "#/metrics/1: Invalid metric \"event:name\""
}} =
parse(params)
end
test "parses 24h date_range shorthand" do
params = %{
"site_id" => "example.com",
"metrics" => ["visitors"],
"date_range" => "24h"
}
assert {:ok, parsed} = parse(params)
assert parsed.input_date_range == :"24h"
end
end