Skip to content
This repository was archived by the owner on Jun 14, 2019. It is now read-only.

Commit eddf455

Browse files
authored
more tests (#32)
1 parent d7d7a88 commit eddf455

File tree

3 files changed

+12
-1
lines changed

3 files changed

+12
-1
lines changed

builder_insert.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ func (b *Builder) insertWriteTo(w Writer) error {
3636
value := b.inserts[col]
3737
fmt.Fprint(w, col)
3838
if e, ok := value.(expr); ok {
39-
fmt.Fprint(valBuffer, e.sql)
39+
fmt.Fprintf(valBuffer, "(%s)", e.sql)
4040
args = append(args, e.args...)
4141
} else {
4242
fmt.Fprint(valBuffer, "?")

builder_test.go

+10
Original file line numberDiff line numberDiff line change
@@ -601,6 +601,10 @@ func TestBuilderInsert(t *testing.T) {
601601
assert.NoError(t, err)
602602
assert.EqualValues(t, "INSERT INTO table1 (c,d) Values (1,2)", sql)
603603

604+
sql, err = Insert(Eq{"c": 1, "d": Expr("SELECT b FROM t WHERE d=? LIMIT 1", 2)}).Into("table1").ToBoundSQL()
605+
assert.NoError(t, err)
606+
assert.EqualValues(t, "INSERT INTO table1 (c,d) Values (1,(SELECT b FROM t WHERE d=2 LIMIT 1))", sql)
607+
604608
sql, err = Insert(Eq{"c": 1, "d": 2}).ToBoundSQL()
605609
assert.Error(t, err)
606610
assert.EqualValues(t, ErrNoTableName, err)
@@ -646,6 +650,12 @@ func TestBuilder_From2(t *testing.T) {
646650
assert.NoError(t, err)
647651
assert.EqualValues(t, "SELECT id FROM table_b tb WHERE b=?", sql)
648652
assert.EqualValues(t, []interface{}{"a"}, args)
653+
654+
b = Select().From("table_b", "tb").Where(Eq{"b": "a"})
655+
sql, args, err = b.ToSQL()
656+
assert.NoError(t, err)
657+
assert.EqualValues(t, "SELECT * FROM table_b tb WHERE b=?", sql)
658+
assert.EqualValues(t, []interface{}{"a"}, args)
649659
}
650660

651661
func TestBuilder_And(t *testing.T) {

string_builder_test.go

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ func TestStringBuilderWriteByte(t *testing.T) {
2323
_, err = b.WriteRune(c)
2424
assert.NoError(t, err)
2525
}
26+
assert.EqualValues(t, 6, b.Len())
2627
assert.EqualValues(t, content, b.String())
2728

2829
for i := 0; i < 100; i++ {

0 commit comments

Comments
 (0)