Fix unit tests.

This commit is contained in:
zer0sub 2019-05-01 17:25:10 +02:00
parent 9b826fff6e
commit eccc17dc8a
10 changed files with 91 additions and 72 deletions

View file

@ -8,63 +8,62 @@ import (
)
func TestInsertNoColumn(t *testing.T) {
_, err := table1.INSERT().VALUES().String()
_, _, err := table1.INSERT().VALUES().Sql()
assert.Assert(t, err != nil)
}
func TestInsertNoRow(t *testing.T) {
_, err := table1.INSERT(table1Col1).String()
_, _, err := table1.INSERT(table1Col1).Sql()
assert.Assert(t, err != nil)
}
func TestInsertColumnLengthMismatch(t *testing.T) {
_, err := table1.INSERT(table1Col1, table1Col2).VALUES(nil).String()
_, _, err := table1.INSERT(table1Col1, table1Col2).VALUES(nil).Sql()
fmt.Println(err)
//fmt.Println(err)
assert.Assert(t, err != nil)
}
func TestInsertNilValue(t *testing.T) {
_, err := table1.INSERT(table1Col1).VALUES(nil).String()
query, args, err := table1.INSERT(table1Col1).VALUES(nil).Sql()
assert.Assert(t, err != nil)
assert.Equal(t, query, "INSERT INTO db.table1 (col1) VALUES ($1);")
assert.Equal(t, len(args), 1)
assert.NilError(t, err)
}
func TestInsertNilColumn(t *testing.T) {
_, err := table1.INSERT(nil).VALUES(1).String()
_, _, err := table1.INSERT(nil).VALUES(1).Sql()
assert.Assert(t, err != nil)
}
func TestInsertSingleValue(t *testing.T) {
sql, err := table1.INSERT(table1Col1).VALUES(1).String()
sql, _, err := table1.INSERT(table1Col1).VALUES(1).Sql()
assert.NilError(t, err)
assert.Equal(t, sql, "INSERT INTO db.table1 (col1) VALUES (1)")
assert.Equal(t, sql, "INSERT INTO db.table1 (col1) VALUES ($1);")
}
func TestInsertDate(t *testing.T) {
date := time.Date(1999, 1, 2, 3, 4, 5, 0, time.UTC)
sql, err := table1.INSERT(table1Col4).VALUES(date).String()
sql, _, err := table1.INSERT(table1Col4).VALUES(date).Sql()
assert.NilError(t, err)
assert.Equal(t, sql, "INSERT INTO db.table1 (col4) "+
"VALUES ('1999-01-02 03:04:05.000000')")
assert.Equal(t, sql, "INSERT INTO db.table1 (col4) VALUES ($1);")
}
func TestInsertMultipleValues(t *testing.T) {
stmt := table1.INSERT(table1Col1, table1Col2, table1Col3)
stmt.VALUES(1, 2, 3)
sql, err := stmt.String()
sql, _, err := stmt.Sql()
assert.NilError(t, err)
assert.Equal(t, sql, "INSERT INTO db.table1 "+
"(col1,col2,col3) "+
"VALUES (1,2,3)")
assert.Equal(t, sql, "INSERT INTO db.table1 (col1,col2,col3) VALUES ($1, $2, $3);")
}
func TestInsertMultipleRows(t *testing.T) {
@ -73,12 +72,10 @@ func TestInsertMultipleRows(t *testing.T) {
VALUES(11, 22).
VALUES(111, 222)
sql, err := stmt.String()
sql, _, err := stmt.Sql()
assert.NilError(t, err)
assert.Equal(t, sql, "INSERT INTO db.table1 "+
"(col1,col2) "+
"VALUES (1,2), (11,22), (111,222)")
assert.Equal(t, sql, "INSERT INTO db.table1 (col1,col2) VALUES ($1, $2), ($3, $4), ($5, $6);")
}
func TestInsertValuesFromModel(t *testing.T) {
@ -95,13 +92,13 @@ func TestInsertValuesFromModel(t *testing.T) {
stmt := table1.INSERT(table1Col1, table1Col2).
VALUES_MAPPING(toInsert)
sql, err := stmt.String()
sql, _, err := stmt.Sql()
assert.NilError(t, err)
fmt.Println(sql)
assert.Equal(t, sql, `INSERT INTO db.table1 (col1,col2) VALUES (1,'one')`)
assert.Equal(t, sql, `INSERT INTO db.table1 (col1,col2) VALUES ($1, $2);`)
}
func TestInsertValuesFromModelColumnMismatch(t *testing.T) {
@ -118,9 +115,9 @@ func TestInsertValuesFromModelColumnMismatch(t *testing.T) {
stmt := table1.INSERT(table1Col1, table1Col2).
VALUES_MAPPING(toInsert)
_, err := stmt.String()
_, _, err := stmt.Sql()
fmt.Println(err)
//fmt.Println(err)
assert.Assert(t, err != nil)
}
@ -129,7 +126,7 @@ func TestInsertQuery(t *testing.T) {
stmt := table1.INSERT(table1Col1).
QUERY(table1.SELECT(table1Col1))
stmtStr, err := stmt.String()
stmtStr, _, err := stmt.Sql()
assert.NilError(t, err)
@ -140,7 +137,7 @@ func TestInsertDefaultValue(t *testing.T) {
stmt := table1.INSERT(table1Col1, table1Col2).
VALUES(DEFAULT, "two")
stmtStr, err := stmt.String()
stmtStr, _, err := stmt.Sql()
assert.NilError(t, err)