MCPcopy
hub / github.com/ent/ent / TestUpdateBuilder_WithPrefix

Function TestUpdateBuilder_WithPrefix

dialect/sql/builder_test.go:2140–2162  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

2138}
2139
2140func TestUpdateBuilder_WithPrefix(t *testing.T) {
2141 u := Dialect(dialect.MySQL).
2142 Update("users").
2143 Prefix(ExprFunc(func(b *Builder) {
2144 b.WriteString("SET @i = ").Arg(1).WriteByte(';')
2145 })).
2146 Set("id", Expr("(@i:=@i+1)")).
2147 OrderBy("id")
2148 require.NoError(t, u.Err())
2149 query, args := u.Query()
2150 require.Equal(t, []any{1}, args)
2151 require.Equal(t, "SET @i = ?; UPDATE `users` SET `id` = (@i:=@i+1) ORDER BY `id`", query)
2152
2153 u = Dialect(dialect.MySQL).
2154 Update("users").
2155 Prefix(Expr("SET @i = 1;")).
2156 Set("id", Expr("(@i:=@i+1)")).
2157 OrderBy("id")
2158 require.NoError(t, u.Err())
2159 query, args = u.Query()
2160 require.Empty(t, args)
2161 require.Equal(t, "SET @i = 1; UPDATE `users` SET `id` = (@i:=@i+1) ORDER BY `id`", query)
2162}
2163
2164func TestMultipleFrom(t *testing.T) {
2165 query, args := Dialect(dialect.Postgres).

Callers

nothing calls this directly

Calls 13

DialectFunction · 0.85
ExprFuncFunction · 0.85
WriteByteMethod · 0.80
ArgMethod · 0.80
WriteStringMethod · 0.80
EmptyMethod · 0.80
ExprFunction · 0.70
ErrMethod · 0.65
QueryMethod · 0.65
OrderByMethod · 0.45
SetMethod · 0.45
PrefixMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…