package toolbox import ( "strings" "testing" "gno.land/p/nt/uassert/v0" ) func TestQueryString(t *testing.T) { got := NewQuery("lookup").Field("q", "username or g1 address").String() want := "\n" + "\n" + "\n" uassert.Equal(t, want, got) } func TestQueryNoPathNoPlaceholder(t *testing.T) { got := NewQuery("").Field("q", "").String() want := "\n\n\n" uassert.Equal(t, want, got) } func TestQueryTwoFields(t *testing.T) { q := NewQuery("compare").Field("a", "first").Field("b", "second") uassert.Equal(t, 2, q.Len()) got := q.String() uassert.True(t, strings.Contains(got, `name="a"`)) uassert.True(t, strings.Contains(got, `name="b"`)) uassert.Equal(t, 1, strings.Count(got, "&"`).String() uassert.True(t, strings.Contains(got, `path="a"b"`)) uassert.True(t, strings.Contains(got, `placeholder="<script>&""`)) uassert.False(t, strings.Contains(got, "