Files
Gumble-Backend/internal/util/db/ilike_test.go
Zane Walker 7e940c83a7
Some checks failed
Build & Test / build-test (push) Has been cancelled
Build & Test / swagger-codegen-cli (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
(Feat): Initial Commit
2026-07-03 19:41:31 +05:30

47 lines
1.2 KiB
Go

package db_test
import (
"testing"
"allaboutapps.dev/aw/go-starter/internal/models"
"allaboutapps.dev/aw/go-starter/internal/test"
"allaboutapps.dev/aw/go-starter/internal/util/db"
"github.com/aarondl/sqlboiler/v4/queries"
"github.com/aarondl/sqlboiler/v4/queries/qm"
"github.com/stretchr/testify/assert"
)
func TestILike(t *testing.T) {
query := models.NewQuery(
qm.Select("*"),
qm.From("users"),
db.InnerJoin("users", "id", "app_user_profiles", "user_id"),
db.ILike("%Max.Muster%", "users", "username"),
db.ILike("Max", "users", "app_user_profiles", "first_name"),
)
sql, args := queries.BuildQuery(query)
test.Snapshoter.Label("SQL").Save(t, sql)
test.Snapshoter.Label("Args").Save(t, args...)
}
func TestEscapeLike(t *testing.T) {
res := db.EscapeLike("%foo% _b%a_r%")
assert.Equal(t, "\\%foo\\% \\_b\\%a\\_r\\%", res)
}
func TestILikeSearch(t *testing.T) {
query := models.NewQuery(
qm.Select("*"),
qm.From("users"),
db.InnerJoin("users", "id", "app_user_profiles", "user_id"),
db.ILikeSearch(" mus%ter m_ax ", "users", "username"),
)
sql, args := queries.BuildQuery(query)
test.Snapshoter.Label("SQL").Save(t, sql)
test.Snapshoter.Label("Args").Save(t, args...)
}