diff --git a/lib/ash/type/string.ex b/lib/ash/type/string.ex index f655022e..9c1587a5 100644 --- a/lib/ash/type/string.ex +++ b/lib/ash/type/string.ex @@ -54,7 +54,7 @@ defmodule Ash.Type.String do if constraints[:trim?] && constraints[:min_length] do StreamData.filter(base_generator, fn value -> - value |> String.trim() |> String.length() |> Kernel.>(constraints[:min_length]) + value |> String.trim() |> String.length() |> Kernel.>=(constraints[:min_length]) end) else base_generator diff --git a/test/generator/generator_test.exs b/test/generator/generator_test.exs index 7d2fbc2a..070eb392 100644 --- a/test/generator/generator_test.exs +++ b/test/generator/generator_test.exs @@ -160,6 +160,12 @@ defmodule Ash.Test.GeneratorTest do end end + test "string generator honors trim?: true" do + check all(string <- Ash.Type.String.generator(min_length: 5, trim?: true)) do + assert String.length(String.trim(string)) >= 5 + end + end + describe "changeset" do test "a directly usable changeset can be created" do Post