62 lines
1.5 KiB
Go
62 lines
1.5 KiB
Go
package db_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
dbv2 "git.fsdpf.net/go/db/v2"
|
|
"github.com/DATA-DOG/go-sqlmock"
|
|
"github.com/stretchr/testify/suite"
|
|
)
|
|
|
|
type (
|
|
dialectWrapperSuite struct {
|
|
suite.Suite
|
|
}
|
|
)
|
|
|
|
func (dws *dialectWrapperSuite) SetupSuite() {
|
|
testDialect := dbv2.DefaultDialectOptions()
|
|
// override to some value to ensure correct dialect is set
|
|
dbv2.RegisterDialect("test", testDialect)
|
|
}
|
|
|
|
func (dws *dialectWrapperSuite) TearDownSuite() {
|
|
dbv2.DeregisterDialect("test")
|
|
}
|
|
|
|
func (dws *dialectWrapperSuite) TestFrom() {
|
|
dw := dbv2.Dialect("test")
|
|
dws.Equal(dbv2.From("table").WithDialect("test"), dw.From("table"))
|
|
}
|
|
|
|
func (dws *dialectWrapperSuite) TestSelect() {
|
|
dw := dbv2.Dialect("test")
|
|
dws.Equal(dbv2.Select("col").WithDialect("test"), dw.Select("col"))
|
|
}
|
|
|
|
func (dws *dialectWrapperSuite) TestInsert() {
|
|
dw := dbv2.Dialect("test")
|
|
dws.Equal(dbv2.Insert("table").WithDialect("test"), dw.Insert("table"))
|
|
}
|
|
|
|
func (dws *dialectWrapperSuite) TestDelete() {
|
|
dw := dbv2.Dialect("test")
|
|
dws.Equal(dbv2.Delete("table").WithDialect("test"), dw.Delete("table"))
|
|
}
|
|
|
|
func (dws *dialectWrapperSuite) TestTruncate() {
|
|
dw := dbv2.Dialect("test")
|
|
dws.Equal(dbv2.Truncate("table").WithDialect("test"), dw.Truncate("table"))
|
|
}
|
|
|
|
func (dws *dialectWrapperSuite) TestDB() {
|
|
mDB, _, err := sqlmock.New()
|
|
dws.Require().NoError(err)
|
|
dw := dbv2.Dialect("test")
|
|
dws.Equal(dbv2.New("test", mDB), dw.DB(mDB))
|
|
}
|
|
|
|
func TestDialectWrapper(t *testing.T) {
|
|
suite.Run(t, new(dialectWrapperSuite))
|
|
}
|