Skip to content

Commit dc54521

Browse files
authored
add more tests for delete (go-xorm#22)
1 parent 1dc0af2 commit dc54521

File tree

4 files changed

+27
-8
lines changed

4 files changed

+27
-8
lines changed

builder_delete.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,12 @@
55
package builder
66

77
import (
8-
"errors"
98
"fmt"
109
)
1110

1211
func (b *Builder) deleteWriteTo(w Writer) error {
1312
if len(b.tableName) <= 0 {
14-
return errors.New("no table indicated")
13+
return ErrNoTableName
1514
}
1615

1716
if _, err := fmt.Fprintf(w, "DELETE FROM %s WHERE ", b.tableName); err != nil {

builder_delete_test.go

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
// Copyright 2018 The Xorm Authors. All rights reserved.
2+
// Use of this source code is governed by a BSD-style
3+
// license that can be found in the LICENSE file.
4+
5+
package builder
6+
7+
import (
8+
"testing"
9+
10+
"github.com/stretchr/testify/assert"
11+
)
12+
13+
func TestBuilderDelete(t *testing.T) {
14+
sql, args, err := Delete(Eq{"a": 1}).From("table1").ToSQL()
15+
assert.NoError(t, err)
16+
assert.EqualValues(t, "DELETE FROM table1 WHERE a=?", sql)
17+
assert.EqualValues(t, []interface{}{1}, args)
18+
}
19+
20+
func TestDeleteNoTable(t *testing.T) {
21+
_, _, err := Delete(Eq{"b": "0"}).ToSQL()
22+
assert.Error(t, err)
23+
assert.EqualValues(t, ErrNoTableName, err)
24+
}

builder_test.go

-6
Original file line numberDiff line numberDiff line change
@@ -432,12 +432,6 @@ func TestBuilderUpdate(t *testing.T) {
432432
fmt.Println(sql, args)
433433
}
434434

435-
func TestBuilderDelete(t *testing.T) {
436-
sql, args, err := Delete(Eq{"a": 1}).From("table1").ToSQL()
437-
assert.NoError(t, err)
438-
fmt.Println(sql, args)
439-
}
440-
441435
func TestSubquery(t *testing.T) {
442436
subb := Select("id").From("table_b").Where(Eq{"b": "a"})
443437
b := Select("a, b").From("table_a").Where(

error.go

+2
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,6 @@ var (
1515
ErrNoInConditions = errors.New("No IN conditions")
1616
// ErrNeedMoreArguments need more arguments
1717
ErrNeedMoreArguments = errors.New("Need more sql arguments")
18+
// ErrNoTableName no table name
19+
ErrNoTableName = errors.New("No table indicated")
1820
)

0 commit comments

Comments
 (0)