diff --git a/lib/ash_phoenix/filter_form/filter_form.ex b/lib/ash_phoenix/filter_form/filter_form.ex index 9f3b998..b1c4149 100644 --- a/lib/ash_phoenix/filter_form/filter_form.ex +++ b/lib/ash_phoenix/filter_form/filter_form.ex @@ -87,18 +87,18 @@ defmodule AshPhoenix.FilterForm do At present, no validation actually occurs, but this will eventually be added. """ def validate(form, params \\ %{}) do + params = sanitize_params(params) + params = if is_predicate?(params) do %{ - operator: :and, - components: %{"0" => params} + "operator" => "and", + "components" => %{"0" => params} } else params end - params = sanitize_params(params) - %{ form | params: params, diff --git a/test/filter_form_test.exs b/test/filter_form_test.exs index 8af9e31..04284ce 100644 --- a/test/filter_form_test.exs +++ b/test/filter_form_test.exs @@ -77,7 +77,11 @@ defmodule AshPhoenix.FilterFormTest do describe "to_filter/1" do test "An empty form returns the filter `true`" do form = FilterForm.new(Post) - assert Ash.Query.equivalent_to?(FilterForm.filter!(Post, form), true) + + assert Ash.Query.equivalent_to?( + FilterForm.filter!(Post, form), + true + ) end test "A form with a single predicate returns the corresponding filter" do