mirror of
https://github.com/DATA-DOG/go-sqlmock.git
synced 2025-02-21 19:06:45 +02:00
* c600769 do not require a connection name, unique dsn is generated * 1b20b9c update travis * 1097b6a add comments for godoc documentation * c142a95 fix golint reported issues
51 lines
1.1 KiB
Go
51 lines
1.1 KiB
Go
package sqlmock
|
|
|
|
import (
|
|
"fmt"
|
|
"testing"
|
|
)
|
|
|
|
// used for examples
|
|
var mock = &Sqlmock{}
|
|
|
|
func ExampleNewErrorResult() {
|
|
result := NewErrorResult(fmt.Errorf("some error"))
|
|
mock.ExpectExec("^INSERT (.+)").WillReturnResult(result)
|
|
}
|
|
|
|
func ExampleNewResult() {
|
|
var lastInsertID, affected int64
|
|
result := NewResult(lastInsertID, affected)
|
|
mock.ExpectExec("^INSERT (.+)").WillReturnResult(result)
|
|
}
|
|
|
|
func TestShouldReturnValidSqlDriverResult(t *testing.T) {
|
|
result := NewResult(1, 2)
|
|
id, err := result.LastInsertId()
|
|
if 1 != id {
|
|
t.Errorf("Expected last insert id to be 1, but got: %d", id)
|
|
}
|
|
if err != nil {
|
|
t.Errorf("expected no error, but got: %s", err)
|
|
}
|
|
affected, err := result.RowsAffected()
|
|
if 2 != affected {
|
|
t.Errorf("Expected affected rows to be 2, but got: %d", affected)
|
|
}
|
|
if err != nil {
|
|
t.Errorf("expected no error, but got: %s", err)
|
|
}
|
|
}
|
|
|
|
func TestShouldReturnErroeSqlDriverResult(t *testing.T) {
|
|
result := NewErrorResult(fmt.Errorf("some error"))
|
|
_, err := result.LastInsertId()
|
|
if err == nil {
|
|
t.Error("expected error, but got none")
|
|
}
|
|
_, err = result.RowsAffected()
|
|
if err == nil {
|
|
t.Error("expected error, but got none")
|
|
}
|
|
}
|