Merge pull request #1 from go-jet/package_refactor

Package path refactor.
CircleCI yml file added.
This commit is contained in:
go-jet 2019-06-21 14:58:06 +02:00 committed by GitHub
commit 4f364173a3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
73 changed files with 189 additions and 188 deletions

27
.circleci/config.yml Normal file
View file

@ -0,0 +1,27 @@
# Golang CircleCI 2.0 configuration file
#
# Check https://circleci.com/docs/2.0/language-go/ for more details
version: 2
jobs:
build:
docker:
# specify the version
- image: circleci/golang:1.9
# Specify service dependencies here if necessary
# CircleCI maintains a library of pre-built images
# documented at https://circleci.com/docs/2.0/circleci-images/
# - image: circleci/postgres:9.4
#### TEMPLATE_NOTE: go expects specific checkout path representing url
#### expecting it in the form of
#### /go/src/github.com/circleci/go-tool
#### /go/src/bitbucket.org/circleci/go-tool
working_directory: /go/src/github.com/go-jet/jet
steps:
- checkout
# specify any bash command here prefixed with `run: `
#- run: go get -v -t -d ./...
#- run: go test -v ./...
- run: go test

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type alias struct { type alias struct {
expression Expression expression Expression

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type BoolExpression interface { type BoolExpression interface {
Expression Expression

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type cast struct { type cast struct {
Expression Expression

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"bytes" "bytes"

View file

@ -1,6 +1,6 @@
// Modeling of columns // Modeling of columns
package sqlbuilder package jet
type column interface { type column interface {
Name() string Name() string

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import "testing" import "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
//------------------------------------------------------// //------------------------------------------------------//
type ColumnBool interface { type ColumnBool interface {

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type DateExpression interface { type DateExpression interface {
Expression Expression

View file

@ -1,10 +1,10 @@
package sqlbuilder package jet
import ( import (
"context" "context"
"database/sql" "database/sql"
"errors" "errors"
"github.com/go-jet/jet/sqlbuilder/execution" "github.com/go-jet/jet/execution"
) )
type DeleteStatement interface { type DeleteStatement interface {

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

3
doc.go Normal file
View file

@ -0,0 +1,3 @@
//
package jet

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type enumValue struct { type enumValue struct {
expressionInterfaceImpl expressionInterfaceImpl

View file

@ -436,11 +436,6 @@ func valueToString(value reflect.Value) string {
return fmt.Sprintf("%#v", valueInterface) return fmt.Sprintf("%#v", valueInterface)
} }
var timeType = reflect.TypeOf(time.Now())
var floatType = reflect.TypeOf(1.0)
var stringType = reflect.TypeOf("str")
var intType = reflect.TypeOf(1)
func isGoBaseType(objType reflect.Type) bool { func isGoBaseType(objType reflect.Type) bool {
typeStr := objType.String() typeStr := objType.String()

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"errors" "errors"
@ -69,11 +69,11 @@ func (e *expressionInterfaceImpl) AS(alias string) projection {
} }
func (e *expressionInterfaceImpl) ASC() OrderByClause { func (e *expressionInterfaceImpl) ASC() OrderByClause {
return &orderByClauseImpl{expression: e.parent, ascent: true} return newOrderByClause(e.parent, true)
} }
func (e *expressionInterfaceImpl) DESC() OrderByClause { func (e *expressionInterfaceImpl) DESC() OrderByClause {
return &orderByClauseImpl{expression: e.parent, ascent: false} return newOrderByClause(e.parent, false)
} }
func (e *expressionInterfaceImpl) TO(dbType string) Expression { func (e *expressionInterfaceImpl) TO(dbType string) Expression {

View file

@ -1,9 +1,8 @@
// Query building functions for expressions components // Query building functions for expressions components
package sqlbuilder package jet
import ( import (
"strconv" "strconv"
"strings"
"time" "time"
) )
@ -51,9 +50,3 @@ func (c *intervalExpression) serialize(statement statementType, out *queryData,
// //
// return intervalExp // return intervalExp
//} //}
var likeEscaper = strings.NewReplacer("_", "\\_", "%", "\\%")
func EscapeForLike(s string) string {
return likeEscaper.Replace(s)
}

View file

@ -1,6 +1,6 @@
// +build disabled // +build disabled
package sqlbuilder package jet
import ( import (
"bytes" "bytes"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import "errors" import "errors"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type FloatExpression interface { type FloatExpression interface {
Expression Expression

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import "errors" import "errors"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"gotest.tools/assert" "gotest.tools/assert"

View file

@ -23,18 +23,18 @@ var sqlBuilderTableTemplate = `
package table package table
import ( import (
"github.com/go-jet/jet/sqlbuilder" "github.com/go-jet/jet"
) )
type {{.GoStructName}} struct { type {{.GoStructName}} struct {
sqlbuilder.Table jet.Table
//Columns //Columns
{{- range .Columns}} {{- range .Columns}}
{{camelize .Name}} sqlbuilder.Column{{.SqlBuilderColumnType}} {{camelize .Name}} jet.Column{{.SqlBuilderColumnType}}
{{- end}} {{- end}}
AllColumns sqlbuilder.ColumnList AllColumns jet.ColumnList
} }
var {{camelize .Name}} = new{{.GoStructName}}() var {{camelize .Name}} = new{{.GoStructName}}()
@ -42,19 +42,19 @@ var {{camelize .Name}} = new{{.GoStructName}}()
func new{{.GoStructName}}() *{{.GoStructName}} { func new{{.GoStructName}}() *{{.GoStructName}} {
var ( var (
{{- range .Columns}} {{- range .Columns}}
{{camelize .Name}}Column = sqlbuilder.{{.SqlBuilderColumnType}}Column("{{.Name}}") {{camelize .Name}}Column = jet.{{.SqlBuilderColumnType}}Column("{{.Name}}")
{{- end}} {{- end}}
) )
return &{{.GoStructName}}{ return &{{.GoStructName}}{
Table: sqlbuilder.NewTable("{{.SchemaName}}", "{{.Name}}", {{template "column-list" .Columns}}), Table: jet.NewTable("{{.SchemaName}}", "{{.Name}}", {{template "column-list" .Columns}}),
//Columns //Columns
{{- range .Columns}} {{- range .Columns}}
{{camelize .Name}}: {{camelize .Name}}Column, {{camelize .Name}}: {{camelize .Name}}Column,
{{- end}} {{- end}}
AllColumns: sqlbuilder.ColumnList{ {{template "column-list" .Columns}} }, AllColumns: jet.ColumnList{ {{template "column-list" .Columns}} },
} }
} }
@ -122,15 +122,15 @@ func (e {{camelize $.Name}}) String() string {
` `
var enumTypeTemplate = `package enum var enumTypeTemplate = `package enum
import "github.com/go-jet/jet/sqlbuilder" import "github.com/go-jet/jet"
var {{camelize $.Name}} = &struct { var {{camelize $.Name}} = &struct {
{{- range $index, $element := .Values}} {{- range $index, $element := .Values}}
{{camelize $element}} sqlbuilder.StringExpression {{camelize $element}} jet.StringExpression
{{- end}} {{- end}}
} { } {
{{- range $index, $element := .Values}} {{- range $index, $element := .Values}}
{{camelize $element}}: sqlbuilder.NewEnumValue("{{$element}}"), {{camelize $element}}: jet.NewEnumValue("{{$element}}"),
{{- end}} {{- end}}
} }
` `

View file

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type groupByClause interface { type groupByClause interface {
serializeForGroupBy(statement statementType, out *queryData) error serializeForGroupBy(statement statementType, out *queryData) error

View file

@ -1,10 +1,10 @@
package sqlbuilder package jet
import ( import (
"context" "context"
"database/sql" "database/sql"
"errors" "errors"
"github.com/go-jet/jet/sqlbuilder/execution" "github.com/go-jet/jet/execution"
) )
type InsertStatement interface { type InsertStatement interface {

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"gotest.tools/assert" "gotest.tools/assert"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type IntegerExpression interface { type IntegerExpression interface {
Expression Expression

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
const ( const (
DEFAULT keywordClause = "DEFAULT" DEFAULT keywordClause = "DEFAULT"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import "fmt" import "fmt"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import "testing" import "testing"

View file

@ -1,9 +1,9 @@
package sqlbuilder package jet
import ( import (
"context" "context"
"database/sql" "database/sql"
"github.com/go-jet/jet/sqlbuilder/execution" "github.com/go-jet/jet/execution"
"github.com/pkg/errors" "github.com/pkg/errors"
) )

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type NumericExpression interface { type NumericExpression interface {
Expression Expression

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import "errors" import "errors"
@ -55,12 +55,12 @@ func EXISTS(subQuery SelectStatement) BoolExpression {
// --------------- CASE operator -------------------// // --------------- CASE operator -------------------//
type caseOperatorExpression interface { type CaseOperatorExpression interface {
Expression Expression
WHEN(condition Expression) caseOperatorExpression WHEN(condition Expression) CaseOperatorExpression
THEN(then Expression) caseOperatorExpression THEN(then Expression) CaseOperatorExpression
ELSE(els Expression) caseOperatorExpression ELSE(els Expression) CaseOperatorExpression
} }
type caseOperatorImpl struct { type caseOperatorImpl struct {
@ -72,7 +72,7 @@ type caseOperatorImpl struct {
els Expression els Expression
} }
func CASE(expression ...Expression) caseOperatorExpression { func CASE(expression ...Expression) CaseOperatorExpression {
caseExp := &caseOperatorImpl{} caseExp := &caseOperatorImpl{}
if len(expression) > 0 { if len(expression) > 0 {
@ -84,17 +84,17 @@ func CASE(expression ...Expression) caseOperatorExpression {
return caseExp return caseExp
} }
func (c *caseOperatorImpl) WHEN(when Expression) caseOperatorExpression { func (c *caseOperatorImpl) WHEN(when Expression) CaseOperatorExpression {
c.when = append(c.when, when) c.when = append(c.when, when)
return c return c
} }
func (c *caseOperatorImpl) THEN(then Expression) caseOperatorExpression { func (c *caseOperatorImpl) THEN(then Expression) CaseOperatorExpression {
c.then = append(c.then, then) c.then = append(c.then, then)
return c return c
} }
func (c *caseOperatorImpl) ELSE(els Expression) caseOperatorExpression { func (c *caseOperatorImpl) ELSE(els Expression) CaseOperatorExpression {
c.els = els c.els = els
return c return c

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import "testing" import "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import "errors" import "errors"
@ -29,10 +29,6 @@ func (o *orderByClauseImpl) serializeForOrderBy(statement statementType, out *qu
return nil return nil
} }
func ASC(expression Expression) OrderByClause { func newOrderByClause(expression Expression, ascent bool) OrderByClause {
return &orderByClauseImpl{expression: expression, ascent: true} return &orderByClauseImpl{expression: expression, ascent: ascent}
}
func DESC(expression Expression) OrderByClause {
return &orderByClauseImpl{expression: expression, ascent: false}
} }

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type projection interface { type projection interface {
serializeForProjection(statement statementType, out *queryData) error serializeForProjection(statement statementType, out *queryData) error

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type rowsType interface { type rowsType interface {
clause clause

View file

@ -1,10 +1,10 @@
package sqlbuilder package jet
import ( import (
"context" "context"
"database/sql" "database/sql"
"errors" "errors"
"github.com/go-jet/jet/sqlbuilder/execution" "github.com/go-jet/jet/execution"
) )
var ( var (

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import "testing" import "testing"

View file

@ -1,10 +1,10 @@
package sqlbuilder package jet
import ( import (
"context" "context"
"database/sql" "database/sql"
"errors" "errors"
"github.com/go-jet/jet/sqlbuilder/execution" "github.com/go-jet/jet/execution"
) )
type SetStatement interface { type SetStatement interface {

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"gotest.tools/assert" "gotest.tools/assert"

View file

@ -1,3 +0,0 @@
//
package sqlbuilder

View file

@ -1,9 +1,9 @@
package sqlbuilder package jet
import ( import (
"context" "context"
"database/sql" "database/sql"
"github.com/go-jet/jet/sqlbuilder/execution" "github.com/go-jet/jet/execution"
"strconv" "strconv"
"strings" "strings"
) )
@ -22,20 +22,20 @@ type Statement interface {
} }
func DebugSql(statement Statement) (string, error) { func DebugSql(statement Statement) (string, error) {
sql, args, err := statement.Sql() sqlQuery, args, err := statement.Sql()
if err != nil { if err != nil {
return "", err return "", err
} }
debugSql := sql debugSqlQuery := sqlQuery
for i, arg := range args { for i, arg := range args {
argPlaceholder := "$" + strconv.Itoa(i+1) argPlaceholder := "$" + strconv.Itoa(i+1)
debugSql = strings.Replace(debugSql, argPlaceholder, ArgToString(arg), 1) debugSqlQuery = strings.Replace(debugSqlQuery, argPlaceholder, ArgToString(arg), 1)
} }
return debugSql, nil return debugSqlQuery, nil
} }
func Query(statement Statement, db execution.Db, destination interface{}) error { func Query(statement Statement, db execution.Db, destination interface{}) error {

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type StringExpression interface { type StringExpression interface {
Expression Expression

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

View file

@ -1,6 +1,6 @@
// Modeling of tables. This is where query preparation starts // Modeling of tables. This is where query preparation starts
package sqlbuilder package jet
import ( import (
"errors" "errors"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"gotest.tools/assert" "gotest.tools/assert"
@ -67,7 +67,7 @@ func assertClauseSerializeErr(t *testing.T, clause clause, errString string) {
//fmt.Println(out.buff.String()) //fmt.Println(out.buff.String())
assert.Assert(t, err != nil) assert.Assert(t, err != nil)
assert.Equal(t, err.Error(), errString) assert.Error(t, err, errString)
} }
func assertProjectionSerialize(t *testing.T, projection projection, query string, args ...interface{}) { func assertProjectionSerialize(t *testing.T, projection projection, query string, args ...interface{}) {
@ -93,5 +93,5 @@ func assertStatementErr(t *testing.T, stmt Statement, errorStr string) {
_, _, err := stmt.Sql() _, _, err := stmt.Sql()
assert.Assert(t, err != nil) assert.Assert(t, err != nil)
assert.Equal(t, err.Error(), errorStr) assert.Error(t, err, errorStr)
} }

View file

@ -2,7 +2,7 @@ package tests
import ( import (
"fmt" "fmt"
. "github.com/go-jet/jet/sqlbuilder" . "github.com/go-jet/jet"
"github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/model" "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/model"
. "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/table" . "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/table"
"github.com/google/uuid" "github.com/google/uuid"
@ -11,7 +11,6 @@ import (
) )
func TestAllTypesSelect(t *testing.T) { func TestAllTypesSelect(t *testing.T) {
dest := []model.AllTypes{} dest := []model.AllTypes{}
err := AllTypes.SELECT(AllTypes.AllColumns).Query(db, &dest) err := AllTypes.SELECT(AllTypes.AllColumns).Query(db, &dest)

View file

@ -5,7 +5,7 @@ import (
"encoding/json" "encoding/json"
"fmt" "fmt"
"github.com/davecgh/go-spew/spew" "github.com/davecgh/go-spew/spew"
. "github.com/go-jet/jet/sqlbuilder" . "github.com/go-jet/jet"
"github.com/go-jet/jet/tests/.test_files/dvd_rental/chinook/model" "github.com/go-jet/jet/tests/.test_files/dvd_rental/chinook/model"
. "github.com/go-jet/jet/tests/.test_files/dvd_rental/chinook/table" . "github.com/go-jet/jet/tests/.test_files/dvd_rental/chinook/table"
"gotest.tools/assert" "gotest.tools/assert"
@ -254,14 +254,14 @@ func assertJson(t *testing.T, jsonFilePath string, data interface{}) {
} }
func jsonPrint(v interface{}) { func jsonPrint(v interface{}) {
json, _ := json.MarshalIndent(v, "", "\t") jsonText, _ := json.MarshalIndent(v, "", "\t")
fmt.Println(string(json)) fmt.Println(string(jsonText))
} }
func jsonSave(path string, v interface{}) { func jsonSave(path string, v interface{}) {
json, _ := json.MarshalIndent(v, "", "\t") jsonText, _ := json.MarshalIndent(v, "", "\t")
err := ioutil.WriteFile(path, json, 0644) err := ioutil.WriteFile(path, jsonText, 0644)
if err != nil { if err != nil {
panic(err) panic(err)

View file

@ -2,6 +2,7 @@ package main
import ( import (
"database/sql" "database/sql"
"fmt"
"github.com/go-jet/jet/generator" "github.com/go-jet/jet/generator"
"github.com/go-jet/jet/tests/dbconfig" "github.com/go-jet/jet/tests/dbconfig"
"io/ioutil" "io/ioutil"
@ -12,45 +13,35 @@ func main() {
if err != nil { if err != nil {
panic("Failed to connect to test db") panic("Failed to connect to test db")
} }
defer db.Close() defer func() {
err := db.Close()
printOnError(err)
}()
testSampleSql, err := ioutil.ReadFile("./init/data/test_sample.sql") schemaNames := []string{
"dvds",
"test_sample",
"chinook",
}
for _, schemaName := range schemaNames {
testSampleSql, err := ioutil.ReadFile("./init/data/" + schemaName + ".sql")
panicOnError(err) panicOnError(err)
_, err = db.Exec(string(testSampleSql)) _, err = db.Exec(string(testSampleSql))
panicOnError(err)
dvdsSql, err := ioutil.ReadFile("./init/data/dvds.sql")
panicOnError(err)
_, err = db.Exec(string(dvdsSql))
panicOnError(err)
err = generator.Generate("./.test_files", generator.GeneratorData{ err = generator.Generate("./.test_files", generator.GeneratorData{
Host: dbconfig.Host, Host: dbconfig.Host,
Port: "5432", Port: "5432",
User: dbconfig.User, User: dbconfig.User,
Password: dbconfig.Password, Password: dbconfig.Password,
DBName: dbconfig.DBName, DBName: dbconfig.DBName,
SchemaName: "dvds", SchemaName: schemaName,
})
panicOnError(err)
err = generator.Generate("./.test_files", generator.GeneratorData{
Host: dbconfig.Host,
Port: "5432",
User: dbconfig.User,
Password: dbconfig.Password,
DBName: dbconfig.DBName,
SchemaName: "test_sample",
}) })
panicOnError(err) panicOnError(err)
}
} }
func panicOnError(err error) { func panicOnError(err error) {
@ -58,3 +49,9 @@ func panicOnError(err error) {
panic(err) panic(err)
} }
} }
func printOnError(err error) {
if err != nil {
fmt.Println(err.Error())
}
}

View file

@ -1,7 +1,7 @@
package tests package tests
import ( import (
. "github.com/go-jet/jet/sqlbuilder" . "github.com/go-jet/jet"
"github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/model" "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/model"
. "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/table" . "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/table"
"gotest.tools/assert" "gotest.tools/assert"

View file

@ -3,7 +3,7 @@ package tests
import ( import (
"fmt" "fmt"
"github.com/davecgh/go-spew/spew" "github.com/davecgh/go-spew/spew"
. "github.com/go-jet/jet/sqlbuilder" . "github.com/go-jet/jet"
"github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/model" "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/model"
"github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/table" "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/table"
"gotest.tools/assert" "gotest.tools/assert"

View file

@ -3,7 +3,7 @@ package tests
import ( import (
"fmt" "fmt"
"github.com/davecgh/go-spew/spew" "github.com/davecgh/go-spew/spew"
. "github.com/go-jet/jet/sqlbuilder" . "github.com/go-jet/jet"
"github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/model" "github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/model"
. "github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/table" . "github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/table"
"github.com/google/uuid" "github.com/google/uuid"

View file

@ -3,7 +3,7 @@ package tests
import ( import (
"fmt" "fmt"
"github.com/davecgh/go-spew/spew" "github.com/davecgh/go-spew/spew"
. "github.com/go-jet/jet/sqlbuilder" . "github.com/go-jet/jet"
"github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/enum" "github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/enum"
"github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/model" "github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/model"
. "github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/table" . "github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/table"
@ -1129,7 +1129,9 @@ LOCK TABLE dvds.address IN`
assert.NilError(t, err) assert.NilError(t, err)
tx.Rollback() err = tx.Rollback()
assert.NilError(t, err)
} }
for _, lockMode := range testData { for _, lockMode := range testData {
@ -1143,7 +1145,9 @@ LOCK TABLE dvds.address IN`
assert.NilError(t, err) assert.NilError(t, err)
tx.Rollback() err = tx.Rollback()
assert.NilError(t, err)
} }
} }
@ -1178,7 +1182,8 @@ FOR`
rowsAffected, _ := res.RowsAffected() rowsAffected, _ := res.RowsAffected()
assert.Equal(t, rowsAffected, int64(3)) assert.Equal(t, rowsAffected, int64(3))
tx.Rollback() err = tx.Rollback()
assert.NilError(t, err)
} }
for lockType, lockTypeStr := range getRowLockTestData() { for lockType, lockTypeStr := range getRowLockTestData() {
@ -1193,7 +1198,8 @@ FOR`
rowsAffected, _ := res.RowsAffected() rowsAffected, _ := res.RowsAffected()
assert.Equal(t, rowsAffected, int64(3)) assert.Equal(t, rowsAffected, int64(3))
tx.Rollback() err = tx.Rollback()
assert.NilError(t, err)
} }
for lockType, lockTypeStr := range getRowLockTestData() { for lockType, lockTypeStr := range getRowLockTestData() {
@ -1208,6 +1214,7 @@ FOR`
rowsAffected, _ := res.RowsAffected() rowsAffected, _ := res.RowsAffected()
assert.Equal(t, rowsAffected, int64(3)) assert.Equal(t, rowsAffected, int64(3))
tx.Rollback() err = tx.Rollback()
assert.NilError(t, err)
} }
} }

View file

@ -2,7 +2,7 @@ package tests
import ( import (
"fmt" "fmt"
. "github.com/go-jet/jet/sqlbuilder" . "github.com/go-jet/jet"
"github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/model" "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/model"
. "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/table" . "github.com/go-jet/jet/tests/.test_files/dvd_rental/test_sample/table"
"gotest.tools/assert" "gotest.tools/assert"

View file

@ -1,7 +1,7 @@
package tests package tests
import ( import (
"github.com/go-jet/jet/sqlbuilder" "github.com/go-jet/jet"
"github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/model" "github.com/go-jet/jet/tests/.test_files/dvd_rental/dvds/model"
"github.com/google/uuid" "github.com/google/uuid"
"gotest.tools/assert" "gotest.tools/assert"
@ -10,7 +10,7 @@ import (
"time" "time"
) )
func assertStatementSql(t *testing.T, query sqlbuilder.Statement, expectedQuery string, expectedArgs ...interface{}) { func assertStatementSql(t *testing.T, query jet.Statement, expectedQuery string, expectedArgs ...interface{}) {
_, args, err := query.Sql() _, args, err := query.Sql()
assert.NilError(t, err) assert.NilError(t, err)
//assert.Equal(t, queryStr, expectedQuery) //assert.Equal(t, queryStr, expectedQuery)
@ -22,7 +22,7 @@ func assertStatementSql(t *testing.T, query sqlbuilder.Statement, expectedQuery
assert.Equal(t, debuqSql, expectedQuery) assert.Equal(t, debuqSql, expectedQuery)
} }
func assertExec(t *testing.T, stmt sqlbuilder.Statement, rowsAffected int64) { func assertExec(t *testing.T, stmt jet.Statement, rowsAffected int64) {
res, err := stmt.Exec(db) res, err := stmt.Exec(db)
assert.NilError(t, err) assert.NilError(t, err)
@ -31,10 +31,10 @@ func assertExec(t *testing.T, stmt sqlbuilder.Statement, rowsAffected int64) {
assert.Equal(t, rows, rowsAffected) assert.Equal(t, rows, rowsAffected)
} }
func assertExecErr(t *testing.T, stmt sqlbuilder.Statement, errorStr string) { func assertExecErr(t *testing.T, stmt jet.Statement, errorStr string) {
_, err := stmt.Exec(db) _, err := stmt.Exec(db)
assert.Equal(t, err.Error(), errorStr) assert.Error(t, err, errorStr)
} }
func boolPtr(b bool) *bool { func boolPtr(b bool) *bool {
return &b return &b
@ -68,29 +68,29 @@ func float64Ptr(f float64) *float64 {
} }
func uuidPtr(u string) *uuid.UUID { func uuidPtr(u string) *uuid.UUID {
uuid := uuid.MustParse(u) newUUID := uuid.MustParse(u)
return &uuid return &newUUID
} }
func timeWithoutTimeZone(t string) *time.Time { func timeWithoutTimeZone(t string) *time.Time {
time, err := time.Parse("15:04:05", t) newTime, err := time.Parse("15:04:05", t)
if err != nil { if err != nil {
panic(err) panic(err)
} }
return &time return &newTime
} }
func timeWithTimeZone(t string) *time.Time { func timeWithTimeZone(t string) *time.Time {
time, err := time.Parse("15:04:05 -0700", t) newTimez, err := time.Parse("15:04:05 -0700", t)
if err != nil { if err != nil {
panic(err) panic(err)
} }
return &time return &newTimez
} }
func timestampWithoutTimeZone(t string, precision int) *time.Time { func timestampWithoutTimeZone(t string, precision int) *time.Time {
@ -101,13 +101,13 @@ func timestampWithoutTimeZone(t string, precision int) *time.Time {
precisionStr = "." + strings.Repeat("9", precision) precisionStr = "." + strings.Repeat("9", precision)
} }
time, err := time.Parse("2006-01-02 15:04:05"+precisionStr+" +0000", t+" +0000") newTime, err := time.Parse("2006-01-02 15:04:05"+precisionStr+" +0000", t+" +0000")
if err != nil { if err != nil {
panic(err) panic(err)
} }
return &time return &newTime
} }
func timestampWithTimeZone(t string, precision int) *time.Time { func timestampWithTimeZone(t string, precision int) *time.Time {
@ -118,17 +118,13 @@ func timestampWithTimeZone(t string, precision int) *time.Time {
precisionStr = "." + strings.Repeat("9", precision) precisionStr = "." + strings.Repeat("9", precision)
} }
time, err := time.Parse("2006-01-02 15:04:05"+precisionStr+" -0700 MST", t) newTime, err := time.Parse("2006-01-02 15:04:05"+precisionStr+" -0700 MST", t)
if err != nil { if err != nil {
panic(err) panic(err)
} }
return &time return &newTime
}
func M3(a, b, c interface{}) []interface{} {
return []interface{}{a, b, c}
} }
var customer0 = model.Customer{ var customer0 = model.Customer{

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type TimeExpression interface { type TimeExpression interface {
Expression Expression

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type TimestampExpression interface { type TimestampExpression interface {
Expression Expression

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type TimestampzExpression interface { type TimestampzExpression interface {
Expression Expression

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
type TimezExpression interface { type TimezExpression interface {
Expression Expression

View file

@ -1,10 +1,10 @@
package sqlbuilder package jet
import ( import (
"context" "context"
"database/sql" "database/sql"
"errors" "errors"
"github.com/go-jet/jet/sqlbuilder/execution" "github.com/go-jet/jet/execution"
) )
type UpdateStatement interface { type UpdateStatement interface {

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"testing" "testing"

View file

@ -1,4 +1,4 @@
package sqlbuilder package jet
import ( import (
"errors" "errors"