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, "