Use testify/require instead of testify/assert for tests.

This commit is contained in:
go-jet 2020-05-09 11:00:22 +02:00
parent ebcbadef24
commit 5d742837f1
32 changed files with 581 additions and 589 deletions

View file

@ -16,8 +16,6 @@ import (
"github.com/go-jet/jet/tests/testdata/results/common"
. "github.com/go-jet/jet/mysql"
"github.com/stretchr/testify/assert"
)
func TestAllTypes(t *testing.T) {
@ -29,9 +27,9 @@ func TestAllTypes(t *testing.T) {
LIMIT(2).
Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.Equal(t, len(dest), 2)
if sourceIsMariaDB() { // MariaDB saves current timestamp in a case of NULL value insert
return
@ -48,8 +46,8 @@ func TestAllTypesViewSelect(t *testing.T) {
dest := []AllTypesView{}
err := view.AllTypesView.SELECT(view.AllTypesView.AllColumns).Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.NoError(t, err)
require.Equal(t, len(dest), 2)
if sourceIsMariaDB() { // MariaDB saves current timestamp in a case of NULL value insert
return
@ -77,11 +75,11 @@ func TestUUID(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.True(t, dest.StrUUID != nil)
assert.True(t, dest.UUID.String() != uuid.UUID{}.String())
assert.True(t, dest.StrUUID.String() != uuid.UUID{}.String())
assert.Equal(t, dest.StrUUID.String(), dest.BinUUID.String())
require.NoError(t, err)
require.True(t, dest.StrUUID != nil)
require.True(t, dest.UUID.String() != uuid.UUID{}.String())
require.True(t, dest.StrUUID.String() != uuid.UUID{}.String())
require.Equal(t, dest.StrUUID.String(), dest.BinUUID.String())
}
func TestExpressionOperators(t *testing.T) {
@ -122,7 +120,7 @@ LIMIT ?;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//testutils.PrintJson(dest)
@ -213,7 +211,7 @@ FROM test_sample.all_types;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertJSONFile(t, dest, "./testdata/results/common/bool_operators.json")
}
@ -266,7 +264,7 @@ func TestFloatOperators(t *testing.T) {
//fmt.Println(queryStr)
assert.Equal(t, queryStr, strings.Replace(`
require.Equal(t, queryStr, strings.Replace(`
SELECT (all_types.'numeric' = all_types.'numeric') AS "eq1",
(all_types.'decimal' = ?) AS "eq2",
(all_types.'real' = ?) AS "eq3",
@ -312,7 +310,7 @@ LIMIT ?;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertJSONFile(t, dest, "./testdata/results/common/float_operators.json")
}
@ -449,7 +447,7 @@ LIMIT ?;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//testutils.PrintJson(dest)
@ -521,7 +519,7 @@ func TestStringOperators(t *testing.T) {
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
var timeT = time.Date(2009, 11, 17, 20, 34, 58, 651387237, time.UTC)
@ -609,7 +607,7 @@ FROM test_sample.all_types;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestDateExpressions(t *testing.T) {
@ -684,7 +682,7 @@ FROM test_sample.all_types;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestDateTimeExpressions(t *testing.T) {
@ -761,7 +759,7 @@ FROM test_sample.all_types;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestTimestampExpressions(t *testing.T) {
@ -837,13 +835,13 @@ FROM test_sample.all_types;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestTimeLiterals(t *testing.T) {
loc, err := time.LoadLocation("Europe/Berlin")
assert.NoError(t, err)
require.NoError(t, err)
var timeT = time.Date(2009, 11, 17, 20, 34, 58, 351387237, loc)
@ -882,7 +880,7 @@ LIMIT ?;
}
err = query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//testutils.PrintJson(dest)
@ -965,7 +963,7 @@ func TestINTERVAL(t *testing.T) {
//fmt.Println(query.DebugSql())
err := query.Query(db, &struct{}{})
assert.NoError(t, err)
require.NoError(t, err)
}
func TestAllTypesInsert(t *testing.T) {
@ -1032,7 +1030,7 @@ func TestAllTypesInsertOnDuplicateKeyUpdate(t *testing.T) {
fmt.Println(stmt.DebugSql())
_, err = stmt.Exec(tx)
assert.NoError(t, err)
require.NoError(t, err)
err = tx.Rollback()
require.NoError(t, err)
@ -1256,7 +1254,7 @@ FROM test_sample.user;
var dest []model.User
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.PrintJson(dest)

View file

@ -4,7 +4,7 @@ import (
"github.com/go-jet/jet/internal/testutils"
. "github.com/go-jet/jet/mysql"
. "github.com/go-jet/jet/tests/.gentestdata/mysql/test_sample/table"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
"time"
)
@ -55,7 +55,7 @@ FROM test_sample.all_types;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest, Result{
As1: "test",

View file

@ -6,7 +6,7 @@ import (
. "github.com/go-jet/jet/mysql"
"github.com/go-jet/jet/tests/.gentestdata/mysql/test_sample/model"
. "github.com/go-jet/jet/tests/.gentestdata/mysql/test_sample/table"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
"time"
)
@ -60,7 +60,7 @@ func TestDeleteQueryContext(t *testing.T) {
dest := []model.Link{}
err := deleteStmt.QueryContext(ctx, db, &dest)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func TestDeleteExecContext(t *testing.T) {
@ -77,7 +77,7 @@ func TestDeleteExecContext(t *testing.T) {
_, err := deleteStmt.ExecContext(ctx, db)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func initForDeleteTest(t *testing.T) {

View file

@ -4,7 +4,7 @@ import (
"github.com/go-jet/jet/generator/mysql"
"github.com/go-jet/jet/internal/testutils"
"github.com/go-jet/jet/tests/dbconfig"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"io/ioutil"
"os"
"os/exec"
@ -25,23 +25,23 @@ func TestGenerator(t *testing.T) {
DBName: "dvds",
})
assert.NoError(t, err)
require.NoError(t, err)
assertGeneratedFiles(t)
}
err := os.RemoveAll(genTestDirRoot)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestCmdGenerator(t *testing.T) {
goInstallJet := exec.Command("sh", "-c", "go install github.com/go-jet/jet/cmd/jet")
goInstallJet.Stderr = os.Stderr
err := goInstallJet.Run()
assert.NoError(t, err)
require.NoError(t, err)
err = os.RemoveAll(genTestDir3)
assert.NoError(t, err)
require.NoError(t, err)
cmd := exec.Command("jet", "-source=MySQL", "-dbname=dvds", "-host=localhost", "-port=3306",
"-user=jet", "-password=jet", "-path="+genTestDir3)
@ -50,18 +50,18 @@ func TestCmdGenerator(t *testing.T) {
cmd.Stdout = os.Stdout
err = cmd.Run()
assert.NoError(t, err)
require.NoError(t, err)
assertGeneratedFiles(t)
err = os.RemoveAll(genTestDirRoot)
assert.NoError(t, err)
require.NoError(t, err)
}
func assertGeneratedFiles(t *testing.T) {
// Table SQL Builder files
tableSQLBuilderFiles, err := ioutil.ReadDir(genTestDir3 + "/dvds/table")
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, tableSQLBuilderFiles, "actor.go", "address.go", "category.go", "city.go", "country.go",
"customer.go", "film.go", "film_actor.go", "film_category.go", "film_text.go", "inventory.go", "language.go",
@ -71,7 +71,7 @@ func assertGeneratedFiles(t *testing.T) {
// View SQL Builder files
viewSQLBuilderFiles, err := ioutil.ReadDir(genTestDir3 + "/dvds/view")
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, viewSQLBuilderFiles, "actor_info.go", "film_list.go", "nicer_but_slower_film_list.go",
"sales_by_film_category.go", "customer_list.go", "sales_by_store.go", "staff_list.go")
@ -80,14 +80,14 @@ func assertGeneratedFiles(t *testing.T) {
// Enums SQL Builder files
enumFiles, err := ioutil.ReadDir(genTestDir3 + "/dvds/enum")
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, enumFiles, "film_rating.go", "film_list_rating.go", "nicer_but_slower_film_list_rating.go")
testutils.AssertFileContent(t, genTestDir3+"/dvds/enum/film_rating.go", mpaaRatingEnumFile)
// Model files
modelFiles, err := ioutil.ReadDir(genTestDir3 + "/dvds/model")
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, modelFiles, "actor.go", "address.go", "category.go", "city.go", "country.go",
"customer.go", "film.go", "film_actor.go", "film_category.go", "film_text.go", "inventory.go", "language.go",

View file

@ -6,7 +6,6 @@ import (
. "github.com/go-jet/jet/mysql"
"github.com/go-jet/jet/tests/.gentestdata/mysql/test_sample/model"
. "github.com/go-jet/jet/tests/.gentestdata/mysql/test_sample/table"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"math/rand"
"testing"
@ -34,7 +33,7 @@ VALUES (100, 'http://www.postgresqltutorial.com', 'PostgreSQL Tutorial', DEFAULT
102, "http://www.yahoo.com", "Yahoo", nil)
_, err := insertQuery.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
insertedLinks := []model.Link{}
@ -43,8 +42,8 @@ VALUES (100, 'http://www.postgresqltutorial.com', 'PostgreSQL Tutorial', DEFAULT
ORDER_BY(Link.ID).
Query(db, &insertedLinks)
assert.NoError(t, err)
assert.Equal(t, len(insertedLinks), 3)
require.NoError(t, err)
require.Equal(t, len(insertedLinks), 3)
testutils.AssertDeepEqual(t, insertedLinks[0], postgreTutorial)
@ -82,7 +81,7 @@ VALUES (100, 'http://www.postgresqltutorial.com', 'PostgreSQL Tutorial', DEFAULT
100, "http://www.postgresqltutorial.com", "PostgreSQL Tutorial")
_, err := stmt.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
insertedLinks := []model.Link{}
@ -91,8 +90,8 @@ VALUES (100, 'http://www.postgresqltutorial.com', 'PostgreSQL Tutorial', DEFAULT
ORDER_BY(Link.ID).
Query(db, &insertedLinks)
assert.NoError(t, err)
assert.Equal(t, len(insertedLinks), 1)
require.NoError(t, err)
require.Equal(t, len(insertedLinks), 1)
testutils.AssertDeepEqual(t, insertedLinks[0], postgreTutorial)
}
@ -115,7 +114,7 @@ VALUES ('http://www.duckduckgo.com', 'Duck Duck go');
testutils.AssertDebugStatementSql(t, query, expectedSQL, "http://www.duckduckgo.com", "Duck Duck go")
_, err := query.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestInsertModelObjectEmptyColumnList(t *testing.T) {
@ -138,7 +137,7 @@ VALUES (1000, 'http://www.duckduckgo.com', 'Duck Duck go', NULL);
testutils.AssertDebugStatementSql(t, query, expectedSQL, int32(1000), "http://www.duckduckgo.com", "Duck Duck go", nil)
_, err := query.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestInsertModelsObject(t *testing.T) {
@ -174,7 +173,7 @@ VALUES ('http://www.postgresqltutorial.com', 'PostgreSQL Tutorial'),
"http://www.yahoo.com", "Yahoo")
_, err := query.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestInsertUsingMutableColumns(t *testing.T) {
@ -209,14 +208,14 @@ VALUES ('http://www.postgresqltutorial.com', 'PostgreSQL Tutorial', DEFAULT),
"http://www.yahoo.com", "Yahoo", nil)
_, err := stmt.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestInsertQuery(t *testing.T) {
_, err := Link.DELETE().
WHERE(Link.ID.NOT_EQ(Int(1)).AND(Link.Name.EQ(String("Youtube")))).
Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
var expectedSQL = `
INSERT INTO test_sample.link (url, name) (
@ -238,7 +237,7 @@ INSERT INTO test_sample.link (url, name) (
testutils.AssertDebugStatementSql(t, query, expectedSQL, int64(1))
_, err = query.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
youtubeLinks := []model.Link{}
err = Link.
@ -246,8 +245,8 @@ INSERT INTO test_sample.link (url, name) (
WHERE(Link.Name.EQ(String("Youtube"))).
Query(db, &youtubeLinks)
assert.NoError(t, err)
assert.Equal(t, len(youtubeLinks), 2)
require.NoError(t, err)
require.Equal(t, len(youtubeLinks), 2)
}
func TestInsertOnDuplicateKey(t *testing.T) {
@ -304,7 +303,7 @@ func TestInsertWithQueryContext(t *testing.T) {
dest := []model.Link{}
err := stmt.QueryContext(ctx, db, &dest)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func TestInsertWithExecContext(t *testing.T) {
@ -320,10 +319,10 @@ func TestInsertWithExecContext(t *testing.T) {
_, err := stmt.ExecContext(ctx, db)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func cleanUpLinkTable(t *testing.T) {
_, err := Link.DELETE().WHERE(Link.ID.GT(Int(1))).Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}

View file

@ -4,7 +4,7 @@ import (
"github.com/go-jet/jet/internal/testutils"
. "github.com/go-jet/jet/mysql"
. "github.com/go-jet/jet/tests/.gentestdata/mysql/dvds/table"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
)
@ -16,7 +16,7 @@ LOCK TABLES dvds.customer READ;
`)
_, err := query.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestLockWrite(t *testing.T) {
@ -27,7 +27,7 @@ LOCK TABLES dvds.customer WRITE;
`)
_, err := query.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestUnlockTables(t *testing.T) {
@ -38,5 +38,5 @@ UNLOCK TABLES;
`)
_, err := query.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}

View file

@ -7,7 +7,7 @@ import (
"github.com/go-jet/jet/tests/.gentestdata/mysql/dvds/model"
. "github.com/go-jet/jet/tests/.gentestdata/mysql/dvds/table"
"github.com/go-jet/jet/tests/.gentestdata/mysql/dvds/view"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
)
@ -30,7 +30,7 @@ WHERE actor.actor_id = ?;
actor := model.Actor{}
err := query.Query(db, &actor)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, actor, actor2)
}
@ -59,9 +59,9 @@ ORDER BY actor.actor_id;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 200)
require.Equal(t, len(dest), 200)
testutils.AssertDeepEqual(t, dest[1], actor2)
//testutils.PrintJson(dest)
@ -136,11 +136,11 @@ ORDER BY payment.customer_id, SUM(payment.amount) ASC;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//testutils.PrintJson(dest)
assert.Equal(t, len(dest), 174)
require.Equal(t, len(dest), 174)
//testutils.SaveJsonFile(dest, "mysql/testdata/customer_payment_sum.json")
testutils.AssertJSONFile(t, dest, "./testdata/results/mysql/customer_payment_sum.json")
@ -176,7 +176,7 @@ func TestSubQuery(t *testing.T) {
}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//testutils.SaveJsonFile(dest, "mysql/testdata/r_rating_films.json")
testutils.AssertJSONFile(t, dest, "./testdata/results/mysql/r_rating_films.json")
@ -229,7 +229,7 @@ LIMIT ?;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestSelectUNION(t *testing.T) {
@ -265,7 +265,7 @@ LIMIT ?;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestSelectUNION_ALL(t *testing.T) {
@ -308,7 +308,7 @@ OFFSET ?;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestJoinQueryStruct(t *testing.T) {
@ -406,10 +406,10 @@ LIMIT ?;
err := query.Query(db, &dest)
assert.NoError(t, err)
//assert.Equal(t, len(dest), 1)
//assert.Equal(t, len(dest[0].Films), 10)
//assert.Equal(t, len(dest[0].Films[0].Actors), 10)
require.NoError(t, err)
//require.Equal(t, len(dest), 1)
//require.Equal(t, len(dest[0].Films), 10)
//require.Equal(t, len(dest[0].Films[0].Actors), 10)
//testutils.SaveJsonFile(dest, "./mysql/testdata/lang_film_actor_inventory_rental.json")
@ -450,10 +450,10 @@ FOR`
tx, _ := db.Begin()
_, err := query.Exec(tx)
assert.NoError(t, err)
require.NoError(t, err)
err = tx.Rollback()
assert.NoError(t, err)
require.NoError(t, err)
}
for lockType, lockTypeStr := range getRowLockTestData() {
@ -464,10 +464,10 @@ FOR`
tx, _ := db.Begin()
_, err := query.Exec(tx)
assert.NoError(t, err)
require.NoError(t, err)
err = tx.Rollback()
assert.NoError(t, err)
require.NoError(t, err)
}
if sourceIsMariaDB() {
@ -482,10 +482,10 @@ FOR`
tx, _ := db.Begin()
_, err := query.Exec(tx)
assert.NoError(t, err)
require.NoError(t, err)
err = tx.Rollback()
assert.NoError(t, err)
require.NoError(t, err)
}
}
@ -514,7 +514,7 @@ SELECT true,
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestLockInShareMode(t *testing.T) {
@ -535,7 +535,7 @@ LOCK IN SHARE MODE;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestWindowFunction(t *testing.T) {
@ -612,7 +612,7 @@ GROUP BY payment.amount, payment.customer_id, payment.payment_date;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestWindowClause(t *testing.T) {
@ -649,7 +649,7 @@ ORDER BY payment.customer_id;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestSimpleView(t *testing.T) {
@ -670,9 +670,9 @@ func TestSimpleView(t *testing.T) {
var dest []ActorInfo
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 10)
require.Equal(t, len(dest), 10)
testutils.AssertJSON(t, dest[1:2], `
[
{
@ -702,11 +702,11 @@ func TestJoinViewWithTable(t *testing.T) {
}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 2)
assert.Equal(t, len(dest[0].Rentals), 32)
assert.Equal(t, len(dest[1].Rentals), 27)
require.Equal(t, len(dest), 2)
require.Equal(t, len(dest[0].Rentals), 32)
require.Equal(t, len(dest[1].Rentals), 27)
}
func TestConditionalProjectionList(t *testing.T) {
@ -737,7 +737,7 @@ LIMIT 3;
`)
var dest []model.Customer
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 3)
require.Equal(t, len(dest), 3)
}

View file

@ -8,7 +8,7 @@ import (
"github.com/go-jet/jet/tests/.gentestdata/mysql/dvds/table"
"github.com/go-jet/jet/tests/.gentestdata/mysql/test_sample/model"
. "github.com/go-jet/jet/tests/.gentestdata/mysql/test_sample/table"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
"time"
)
@ -51,8 +51,8 @@ WHERE link.name = 'Bing';
WHERE(Link.Name.EQ(String("Bong"))).
Query(db, &links)
assert.NoError(t, err)
assert.Equal(t, len(links), 1)
require.NoError(t, err)
require.Equal(t, len(links), 1)
testutils.AssertDeepEqual(t, links[0], model.Link{
ID: 204,
URL: "http://bong.com",
@ -198,7 +198,7 @@ WHERE link.id = 201;
func TestUpdateWithInvalidModelData(t *testing.T) {
defer func() {
r := recover()
assert.Equal(t, r, "missing struct field for column : id")
require.Equal(t, r, "missing struct field for column : id")
}()
setupLinkTableForUpdateTest(t)
@ -239,7 +239,7 @@ func TestUpdateQueryContext(t *testing.T) {
dest := []model.Link{}
err := updateStmt.QueryContext(ctx, db, &dest)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func TestUpdateExecContext(t *testing.T) {
@ -257,7 +257,7 @@ func TestUpdateExecContext(t *testing.T) {
_, err := updateStmt.ExecContext(ctx, db)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func TestUpdateWithJoin(t *testing.T) {
@ -270,7 +270,7 @@ func TestUpdateWithJoin(t *testing.T) {
//fmt.Println(query.DebugSql())
_, err := query.Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}
func setupLinkTableForUpdateTest(t *testing.T) {
@ -285,5 +285,5 @@ func setupLinkTableForUpdateTest(t *testing.T) {
VALUES(204, "http://www.bing.com", "Bing", DEFAULT).
Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}

View file

@ -1,25 +1,24 @@
package postgres
import (
"github.com/stretchr/testify/require"
"testing"
"time"
"github.com/google/uuid"
"github.com/stretchr/testify/assert"
"github.com/go-jet/jet/internal/testutils"
. "github.com/go-jet/jet/postgres"
"github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/model"
. "github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/table"
"github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/view"
"github.com/go-jet/jet/tests/testdata/results/common"
"github.com/google/uuid"
)
func TestAllTypesSelect(t *testing.T) {
dest := []model.AllTypes{}
err := AllTypes.SELECT(AllTypes.AllColumns).Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest[0], allTypesRow0)
testutils.AssertDeepEqual(t, dest[1], allTypesRow1)
@ -31,7 +30,7 @@ func TestAllTypesViewSelect(t *testing.T) {
dest := []AllTypesView{}
err := view.AllTypesView.SELECT(view.AllTypesView.AllColumns).Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest[0], AllTypesView(allTypesRow0))
testutils.AssertDeepEqual(t, dest[1], AllTypesView(allTypesRow1))
@ -45,9 +44,9 @@ func TestAllTypesInsertModel(t *testing.T) {
dest := []model.AllTypes{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.Equal(t, len(dest), 2)
testutils.AssertDeepEqual(t, dest[0], allTypesRow0)
testutils.AssertDeepEqual(t, dest[1], allTypesRow1)
}
@ -64,8 +63,8 @@ func TestAllTypesInsertQuery(t *testing.T) {
dest := []model.AllTypes{}
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.NoError(t, err)
require.Equal(t, len(dest), 2)
testutils.AssertDeepEqual(t, dest[0], allTypesRow0)
testutils.AssertDeepEqual(t, dest[1], allTypesRow1)
}
@ -80,7 +79,7 @@ func TestAllTypesFromSubQuery(t *testing.T) {
FROM(subQuery).
LIMIT(2)
assert.Equal(t, mainQuery.DebugSql(), `
require.Equal(t, mainQuery.DebugSql(), `
SELECT "allTypesSubQuery"."all_types.small_int_ptr" AS "all_types.small_int_ptr",
"allTypesSubQuery"."all_types.small_int" AS "all_types.small_int",
"allTypesSubQuery"."all_types.integer_ptr" AS "all_types.integer_ptr",
@ -212,8 +211,8 @@ LIMIT 2;
dest := []model.AllTypes{}
err := mainQuery.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.NoError(t, err)
require.Equal(t, len(dest), 2)
}
func TestExpressionOperators(t *testing.T) {
@ -251,7 +250,7 @@ LIMIT $5;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//testutils.PrintJson(dest)
@ -320,7 +319,7 @@ func TestExpressionCast(t *testing.T) {
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestStringOperators(t *testing.T) {
@ -400,7 +399,7 @@ func TestStringOperators(t *testing.T) {
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestBoolOperators(t *testing.T) {
@ -469,7 +468,7 @@ LIMIT $5;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertJSONFile(t, dest, "./testdata/results/common/bool_operators.json")
}
@ -519,7 +518,7 @@ func TestFloatOperators(t *testing.T) {
queryStr, _ := query.Sql()
assert.Equal(t, queryStr, `
require.Equal(t, queryStr, `
SELECT (all_types.numeric = all_types.numeric) AS "eq1",
(all_types.decimal = $1) AS "eq2",
(all_types.real = $2) AS "eq3",
@ -565,7 +564,7 @@ LIMIT $35;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//testutils.PrintJson(dest)
@ -704,7 +703,7 @@ LIMIT $23;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//testutils.SaveJsonFile("./testdata/common/int_operators.json", dest)
//testutils.PrintJson(dest)
@ -783,7 +782,7 @@ func TestTimeExpression(t *testing.T) {
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestInterval(t *testing.T) {
@ -834,7 +833,7 @@ func TestInterval(t *testing.T) {
//fmt.Println(stmt.DebugSql())
err := stmt.Query(db, &struct{}{})
assert.NoError(t, err)
require.NoError(t, err)
}
func TestSubQueryColumnReference(t *testing.T) {
@ -986,12 +985,12 @@ FROM`
dest1 := []model.AllTypes{}
err := stmt1.Query(db, &dest1)
assert.NoError(t, err)
assert.Equal(t, len(dest1), 2)
assert.Equal(t, dest1[0].Boolean, allTypesRow0.Boolean)
assert.Equal(t, dest1[0].Integer, allTypesRow0.Integer)
assert.Equal(t, dest1[0].Real, allTypesRow0.Real)
assert.Equal(t, dest1[0].Text, allTypesRow0.Text)
require.NoError(t, err)
require.Equal(t, len(dest1), 2)
require.Equal(t, dest1[0].Boolean, allTypesRow0.Boolean)
require.Equal(t, dest1[0].Integer, allTypesRow0.Integer)
require.Equal(t, dest1[0].Real, allTypesRow0.Real)
require.Equal(t, dest1[0].Text, allTypesRow0.Text)
testutils.AssertDeepEqual(t, dest1[0].Time, allTypesRow0.Time)
testutils.AssertDeepEqual(t, dest1[0].Timez, allTypesRow0.Timez)
testutils.AssertDeepEqual(t, dest1[0].Timestamp, allTypesRow0.Timestamp)
@ -1008,7 +1007,7 @@ FROM`
dest2 := []model.AllTypes{}
err = stmt2.Query(db, &dest2)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest1, dest2)
}
}
@ -1016,7 +1015,7 @@ FROM`
func TestTimeLiterals(t *testing.T) {
loc, err := time.LoadLocation("Europe/Berlin")
assert.NoError(t, err)
require.NoError(t, err)
var timeT = time.Date(2009, 11, 17, 20, 34, 58, 651387237, loc)
@ -1051,7 +1050,7 @@ LIMIT $6;
err = query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//testutils.PrintJson(dest)

View file

@ -7,7 +7,7 @@ import (
. "github.com/go-jet/jet/postgres"
"github.com/go-jet/jet/tests/.gentestdata/jetdb/chinook/model"
. "github.com/go-jet/jet/tests/.gentestdata/jetdb/chinook/table"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
"time"
)
@ -30,8 +30,8 @@ ORDER BY "Album"."AlbumId" ASC;
err := stmt.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 347)
require.NoError(t, err)
require.Equal(t, len(dest), 347)
testutils.AssertDeepEqual(t, dest[0], album1)
testutils.AssertDeepEqual(t, dest[1], album2)
testutils.AssertDeepEqual(t, dest[len(dest)-1], album347)
@ -103,8 +103,8 @@ func TestJoinEverything(t *testing.T) {
err := stmt.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 275)
require.NoError(t, err)
require.Equal(t, len(dest), 275)
testutils.AssertJSONFile(t, dest, "./testdata/results/postgres/joined_everything.json")
}
@ -143,8 +143,8 @@ ORDER BY "Employee"."EmployeeId";
err := stmt.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 8)
require.NoError(t, err)
require.Equal(t, len(dest), 8)
testutils.AssertJSON(t, dest[0:2], `
[
{
@ -236,9 +236,9 @@ ORDER BY "Album.AlbumId";
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.Equal(t, len(dest), 2)
testutils.AssertDeepEqual(t, dest[0], album1)
testutils.AssertDeepEqual(t, dest[1], album2)
}
@ -256,7 +256,7 @@ func TestQueryWithContext(t *testing.T) {
SELECT(Album.AllColumns, Track.AllColumns, InvoiceLine.AllColumns).
QueryContext(ctx, db, &dest)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func TestExecWithContext(t *testing.T) {
@ -270,7 +270,7 @@ func TestExecWithContext(t *testing.T) {
SELECT(Album.AllColumns, Track.AllColumns, InvoiceLine.AllColumns).
ExecContext(ctx, db)
assert.Error(t, err, "pq: canceling statement due to user request")
require.Error(t, err, "pq: canceling statement due to user request")
}
func TestSubQueriesForQuotedNames(t *testing.T) {
@ -327,7 +327,7 @@ ORDER BY "first10Artist"."Artist.ArtistId";
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//spew.Dump(dest)
}

View file

@ -6,7 +6,7 @@ import (
. "github.com/go-jet/jet/postgres"
"github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/model"
. "github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/table"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
"time"
)
@ -48,9 +48,9 @@ RETURNING link.id AS "link.id",
err := deleteStmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.Equal(t, len(dest), 2)
testutils.AssertDeepEqual(t, dest[0].Name, "Gmail")
testutils.AssertDeepEqual(t, dest[1].Name, "Outlook")
}
@ -79,7 +79,7 @@ func TestDeleteQueryContext(t *testing.T) {
dest := []model.Link{}
err := deleteStmt.QueryContext(ctx, db, &dest)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func TestDeleteExecContext(t *testing.T) {
@ -98,5 +98,5 @@ func TestDeleteExecContext(t *testing.T) {
_, err := deleteStmt.ExecContext(ctx, db)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}

View file

@ -4,7 +4,7 @@ import (
"github.com/go-jet/jet/generator/postgres"
"github.com/go-jet/jet/internal/testutils"
"github.com/go-jet/jet/tests/dbconfig"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"io/ioutil"
"os"
"os/exec"
@ -17,30 +17,30 @@ import (
func TestGeneratedModel(t *testing.T) {
actor := model.Actor{}
assert.Equal(t, reflect.TypeOf(actor.ActorID).String(), "int32")
require.Equal(t, reflect.TypeOf(actor.ActorID).String(), "int32")
actorIDField, ok := reflect.TypeOf(actor).FieldByName("ActorID")
assert.True(t, ok)
assert.Equal(t, actorIDField.Tag.Get("sql"), "primary_key")
assert.Equal(t, reflect.TypeOf(actor.FirstName).String(), "string")
assert.Equal(t, reflect.TypeOf(actor.LastName).String(), "string")
assert.Equal(t, reflect.TypeOf(actor.LastUpdate).String(), "time.Time")
require.True(t, ok)
require.Equal(t, actorIDField.Tag.Get("sql"), "primary_key")
require.Equal(t, reflect.TypeOf(actor.FirstName).String(), "string")
require.Equal(t, reflect.TypeOf(actor.LastName).String(), "string")
require.Equal(t, reflect.TypeOf(actor.LastUpdate).String(), "time.Time")
filmActor := model.FilmActor{}
assert.Equal(t, reflect.TypeOf(filmActor.FilmID).String(), "int16")
require.Equal(t, reflect.TypeOf(filmActor.FilmID).String(), "int16")
filmIDField, ok := reflect.TypeOf(filmActor).FieldByName("FilmID")
assert.True(t, ok)
assert.Equal(t, filmIDField.Tag.Get("sql"), "primary_key")
require.True(t, ok)
require.Equal(t, filmIDField.Tag.Get("sql"), "primary_key")
assert.Equal(t, reflect.TypeOf(filmActor.ActorID).String(), "int16")
require.Equal(t, reflect.TypeOf(filmActor.ActorID).String(), "int16")
actorIDField, ok = reflect.TypeOf(filmActor).FieldByName("ActorID")
assert.True(t, ok)
assert.Equal(t, filmIDField.Tag.Get("sql"), "primary_key")
require.True(t, ok)
require.Equal(t, filmIDField.Tag.Get("sql"), "primary_key")
staff := model.Staff{}
assert.Equal(t, reflect.TypeOf(staff.Email).String(), "*string")
assert.Equal(t, reflect.TypeOf(staff.Picture).String(), "*[]uint8")
require.Equal(t, reflect.TypeOf(staff.Email).String(), "*string")
require.Equal(t, reflect.TypeOf(staff.Picture).String(), "*[]uint8")
}
const genTestDir2 = "./.gentestdata2"
@ -49,10 +49,10 @@ func TestCmdGenerator(t *testing.T) {
goInstallJet := exec.Command("sh", "-c", "go install github.com/go-jet/jet/cmd/jet")
goInstallJet.Stderr = os.Stderr
err := goInstallJet.Run()
assert.NoError(t, err)
require.NoError(t, err)
err = os.RemoveAll(genTestDir2)
assert.NoError(t, err)
require.NoError(t, err)
cmd := exec.Command("jet", "-source=PostgreSQL", "-dbname=jetdb", "-host=localhost", "-port=5432",
"-user=jet", "-password=jet", "-schema=dvds", "-path="+genTestDir2)
@ -60,12 +60,12 @@ func TestCmdGenerator(t *testing.T) {
cmd.Stdout = os.Stdout
err = cmd.Run()
assert.NoError(t, err)
require.NoError(t, err)
assertGeneratedFiles(t)
err = os.RemoveAll(genTestDir2)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestGenerator(t *testing.T) {
@ -83,19 +83,19 @@ func TestGenerator(t *testing.T) {
SchemaName: "dvds",
})
assert.NoError(t, err)
require.NoError(t, err)
assertGeneratedFiles(t)
}
err := os.RemoveAll(genTestDir2)
assert.NoError(t, err)
require.NoError(t, err)
}
func assertGeneratedFiles(t *testing.T) {
// Table SQL Builder files
tableSQLBuilderFiles, err := ioutil.ReadDir("./.gentestdata2/jetdb/dvds/table")
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, tableSQLBuilderFiles, "actor.go", "address.go", "category.go", "city.go", "country.go",
"customer.go", "film.go", "film_actor.go", "film_category.go", "inventory.go", "language.go",
@ -105,7 +105,7 @@ func assertGeneratedFiles(t *testing.T) {
// View SQL Builder files
viewSQLBuilderFiles, err := ioutil.ReadDir("./.gentestdata2/jetdb/dvds/view")
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, viewSQLBuilderFiles, "actor_info.go", "film_list.go", "nicer_but_slower_film_list.go",
"sales_by_film_category.go", "customer_list.go", "sales_by_store.go", "staff_list.go")
@ -114,14 +114,14 @@ func assertGeneratedFiles(t *testing.T) {
// Enums SQL Builder files
enumFiles, err := ioutil.ReadDir("./.gentestdata2/jetdb/dvds/enum")
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, enumFiles, "mpaa_rating.go")
testutils.AssertFileContent(t, "./.gentestdata2/jetdb/dvds/enum/mpaa_rating.go", mpaaRatingEnumFile)
// Model files
modelFiles, err := ioutil.ReadDir("./.gentestdata2/jetdb/dvds/model")
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, modelFiles, "actor.go", "address.go", "category.go", "city.go", "country.go",
"customer.go", "film.go", "film_actor.go", "film_category.go", "inventory.go", "language.go",
@ -335,14 +335,14 @@ func TestGeneratedAllTypesSQLBuilderFiles(t *testing.T) {
tableDir := testRoot + ".gentestdata/jetdb/test_sample/table/"
enumFiles, err := ioutil.ReadDir(enumDir)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, enumFiles, "mood.go", "level.go")
testutils.AssertFileContent(t, enumDir+"mood.go", moodEnumContent)
testutils.AssertFileContent(t, enumDir+"level.go", levelEnumContent)
modelFiles, err := ioutil.ReadDir(modelDir)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, modelFiles, "all_types.go", "all_types_view.go", "employee.go", "link.go",
"mood.go", "person.go", "person_phone.go", "weird_names_table.go", "level.go", "user.go")
@ -350,7 +350,7 @@ func TestGeneratedAllTypesSQLBuilderFiles(t *testing.T) {
testutils.AssertFileContent(t, modelDir+"all_types.go", allTypesModelContent)
tableFiles, err := ioutil.ReadDir(tableDir)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertFileNamesEqual(t, tableFiles, "all_types.go", "employee.go", "link.go",
"person.go", "person_phone.go", "weird_names_table.go", "user.go")

View file

@ -6,7 +6,7 @@ import (
. "github.com/go-jet/jet/postgres"
"github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/model"
. "github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/table"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"math/rand"
"testing"
"time"
@ -40,9 +40,9 @@ RETURNING link.id AS "link.id",
err := insertQuery.Query(db, &insertedLinks)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(insertedLinks), 3)
require.Equal(t, len(insertedLinks), 3)
testutils.AssertDeepEqual(t, insertedLinks[0], model.Link{
ID: 100,
@ -69,7 +69,7 @@ RETURNING link.id AS "link.id",
ORDER_BY(Link.ID).
Query(db, &allLinks)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, insertedLinks, allLinks)
}
@ -332,7 +332,7 @@ func TestInsertQuery(t *testing.T) {
_, err := Link.DELETE().
WHERE(Link.ID.NOT_EQ(Int(0)).AND(Link.Name.EQ(String("Youtube")))).
Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
var expectedSQL = `
INSERT INTO test_sample.link (url, name) (
@ -362,7 +362,7 @@ RETURNING link.id AS "link.id",
err = query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
youtubeLinks := []model.Link{}
err = Link.
@ -370,8 +370,8 @@ RETURNING link.id AS "link.id",
WHERE(Link.Name.EQ(String("Youtube"))).
Query(db, &youtubeLinks)
assert.NoError(t, err)
assert.Equal(t, len(youtubeLinks), 2)
require.NoError(t, err)
require.Equal(t, len(youtubeLinks), 2)
}
func TestInsertWithQueryContext(t *testing.T) {
@ -389,7 +389,7 @@ func TestInsertWithQueryContext(t *testing.T) {
dest := []model.Link{}
err := stmt.QueryContext(ctx, db, &dest)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func TestInsertWithExecContext(t *testing.T) {
@ -405,5 +405,5 @@ func TestInsertWithExecContext(t *testing.T) {
_, err := stmt.ExecContext(ctx, db)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}

View file

@ -3,7 +3,7 @@ package postgres
import (
"context"
"github.com/go-jet/jet/internal/testutils"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
"time"
@ -35,11 +35,11 @@ LOCK TABLE dvds.address IN`
_, err := query.Exec(tx)
assert.NoError(t, err)
require.NoError(t, err)
err = tx.Rollback()
assert.NoError(t, err)
require.NoError(t, err)
}
for _, lockMode := range testData {
@ -51,11 +51,11 @@ LOCK TABLE dvds.address IN`
_, err := query.Exec(tx)
assert.NoError(t, err)
require.NoError(t, err)
err = tx.Rollback()
assert.NoError(t, err)
require.NoError(t, err)
}
}
@ -70,5 +70,5 @@ func TestLockExecContext(t *testing.T) {
_, err := Address.LOCK().IN(LOCK_ACCESS_SHARE).ExecContext(ctx, tx)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}

View file

@ -4,7 +4,7 @@ import (
"github.com/go-jet/jet/internal/testutils"
"github.com/go-jet/jet/tests/.gentestdata/jetdb/northwind/model"
. "github.com/go-jet/jet/tests/.gentestdata/jetdb/northwind/table"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
)
@ -59,7 +59,7 @@ func TestNorthwindJoinEverything(t *testing.T) {
}
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//jsonSave("./testdata/northwind-all.json", dest)
testutils.AssertJSONFile(t, dest, "./testdata/results/postgres/northwind-all.json")

View file

@ -6,7 +6,6 @@ import (
"github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/model"
. "github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/table"
"github.com/google/uuid"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
)
@ -26,8 +25,8 @@ WHERE all_types.uuid = 'a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11';
result := model.AllTypes{}
err := query.Query(db, &result)
assert.NoError(t, err)
assert.Equal(t, result.UUID, uuid.MustParse("a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11"))
require.NoError(t, err)
require.Equal(t, result.UUID, uuid.MustParse("a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11"))
testutils.AssertDeepEqual(t, result.UUIDPtr, testutils.UUIDPtr("a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11"))
}
@ -47,8 +46,8 @@ func TestUUIDComplex(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.NoError(t, err)
require.Equal(t, len(dest), 2)
testutils.AssertJSON(t, dest, `
[
{
@ -97,7 +96,7 @@ func TestUUIDComplex(t *testing.T) {
}
}
err := singleQuery.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertJSON(t, dest, `
{
@ -133,7 +132,7 @@ func TestUUIDComplex(t *testing.T) {
}
err := leftQuery.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertJSON(t, dest, `
[
{
@ -195,7 +194,7 @@ FROM test_sample.person;
err := query.Query(db, &result)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertJSON(t, result, `
[
{
@ -263,8 +262,8 @@ ORDER BY employee.employee_id;
err = query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 8)
require.NoError(t, err)
require.Equal(t, len(dest), 8)
testutils.AssertDeepEqual(t, dest[0].Employee, model.Employee{
EmployeeID: 1,
FirstName: "Windy",
@ -273,7 +272,7 @@ ORDER BY employee.employee_id;
ManagerID: nil,
})
assert.True(t, dest[0].Manager == nil)
require.True(t, dest[0].Manager == nil)
testutils.AssertDeepEqual(t, dest[7].Employee, model.Employee{
EmployeeID: 8,
@ -311,9 +310,9 @@ FROM test_sample."WEIRD NAMES TABLE";
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 1)
require.Equal(t, len(dest), 1)
testutils.AssertDeepEqual(t, dest[0], model.WeirdNamesTable{
WeirdColumnName1: "Doe",
WeirdColumnName2: "Doe",
@ -360,7 +359,7 @@ FROM test_sample."User";
var dest []model.User
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.PrintJson(dest)

View file

@ -8,7 +8,7 @@ import (
"github.com/go-jet/jet/tests/.gentestdata/jetdb/dvds/model"
. "github.com/go-jet/jet/tests/.gentestdata/jetdb/dvds/table"
"github.com/google/uuid"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
)
@ -53,38 +53,38 @@ func TestScanToValidDestination(t *testing.T) {
dest := []struct{}{}
err := oneInventoryQuery.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
})
t.Run("global query function scan", func(t *testing.T) {
queryStr, args := oneInventoryQuery.Sql()
dest := []struct{}{}
err := qrm.Query(nil, db, queryStr, args, &dest)
assert.NoError(t, err)
require.NoError(t, err)
})
t.Run("pointer to slice", func(t *testing.T) {
err := oneInventoryQuery.Query(db, &[]struct{}{})
assert.NoError(t, err)
require.NoError(t, err)
})
t.Run("pointer to slice of pointer to structs", func(t *testing.T) {
err := oneInventoryQuery.Query(db, &[]*struct{}{})
assert.NoError(t, err)
require.NoError(t, err)
})
t.Run("pointer to slice of strings", func(t *testing.T) {
err := oneInventoryQuery.Query(db, &[]int32{})
assert.NoError(t, err)
require.NoError(t, err)
})
t.Run("pointer to slice of strings", func(t *testing.T) {
err := oneInventoryQuery.Query(db, &[]*int32{})
assert.NoError(t, err)
require.NoError(t, err)
})
}
@ -99,7 +99,7 @@ func TestScanToStruct(t *testing.T) {
dest := model.Inventory{}
err := query.LIMIT(1).Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, inventory1, dest)
})
@ -107,7 +107,7 @@ func TestScanToStruct(t *testing.T) {
dest := model.Inventory{}
err := query.LIMIT(10).Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, inventory1, dest)
})
@ -117,7 +117,7 @@ func TestScanToStruct(t *testing.T) {
}{}
err := query.LIMIT(1).Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, inventory1, dest.Inventory)
})
@ -127,7 +127,7 @@ func TestScanToStruct(t *testing.T) {
}{}
err := query.LIMIT(1).Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, inventory1, *dest.Inventory)
})
@ -158,11 +158,11 @@ func TestScanToStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, *dest.InventoryID, int32(1))
assert.Equal(t, dest.FilmID, int16(1))
assert.Equal(t, *dest.StoreID, int16(1))
require.Equal(t, *dest.InventoryID, int32(1))
require.Equal(t, dest.FilmID, int16(1))
require.Equal(t, *dest.StoreID, int16(1))
})
t.Run("type convert int32 to int", func(t *testing.T) {
@ -175,7 +175,7 @@ func TestScanToStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
})
t.Run("type mismatch scanner type", func(t *testing.T) {
@ -217,7 +217,7 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Inventory, inventory1)
testutils.AssertDeepEqual(t, dest.Film, film1)
testutils.AssertDeepEqual(t, dest.Store, store1)
@ -232,7 +232,7 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, *dest.Inventory, inventory1)
testutils.AssertDeepEqual(t, *dest.Film, film1)
testutils.AssertDeepEqual(t, *dest.Store, store1)
@ -246,7 +246,7 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Inventory, inventory1)
testutils.AssertDeepEqual(t, dest.Actor, model.Actor{})
})
@ -259,7 +259,7 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Inventory, inventory1)
testutils.AssertDeepEqual(t, dest.Actor, (*model.Actor)(nil))
})
@ -272,7 +272,7 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Inventory, inventory1)
testutils.AssertDeepEqual(t, dest.Actor, (*model.Actor)(nil))
})
@ -291,9 +291,9 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Inventory, inventory1)
assert.True(t, dest.Actor != nil)
require.True(t, dest.Actor != nil)
})
t.Run("struct embedded unused pointer", func(t *testing.T) {
@ -306,7 +306,7 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Inventory, inventory1)
testutils.AssertDeepEqual(t, dest.Actor, (*struct{ model.Actor })(nil))
})
@ -322,7 +322,7 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Inventory, inventory1)
testutils.AssertDeepEqual(t, dest.Actor, (*struct {
model.Actor
@ -341,9 +341,9 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Inventory, inventory1)
assert.True(t, dest.Actor != nil)
require.True(t, dest.Actor != nil)
testutils.AssertDeepEqual(t, dest.Actor.Actor, model.Actor{})
testutils.AssertDeepEqual(t, dest.Actor.Film, film1)
})
@ -361,10 +361,10 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Inventory, inventory1)
assert.True(t, dest.Actor != nil)
assert.True(t, dest.Actor.Film != nil)
require.True(t, dest.Actor != nil)
require.True(t, dest.Actor.Film != nil)
testutils.AssertDeepEqual(t, dest.Actor.Film.Film, &film1)
})
@ -398,7 +398,7 @@ func TestScanToNestedStruct(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Inventory, inventory1)
testutils.AssertDeepEqual(t, dest.Film.Film, film1)
testutils.AssertDeepEqual(t, dest.Store, store1)
@ -423,8 +423,8 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 10)
require.NoError(t, err)
require.Equal(t, len(dest), 10)
testutils.AssertDeepEqual(t, dest[0], inventory1)
testutils.AssertDeepEqual(t, dest[1], inventory2)
})
@ -433,7 +433,7 @@ func TestScanToSlice(t *testing.T) {
var dest []int32
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest, []int32{1, 2, 3, 4, 5, 6, 7, 8, 9, 10})
})
@ -442,14 +442,14 @@ func TestScanToSlice(t *testing.T) {
var dest []int
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
})
t.Run("slice type mismatch", func(t *testing.T) {
var dest []bool
testutils.AssertQueryPanicErr(t, query, db, &dest, `jet: can't append int32 to []bool slice`)
//assert.Error(t, err, `jet: can't append int32 to []bool slice `)
//require.Error(t, err, `jet: can't append int32 to []bool slice `)
})
})
@ -473,7 +473,7 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest.Film, film1)
testutils.AssertDeepEqual(t, dest.IDs, []int32{1, 2, 3, 4, 5, 6, 7, 8})
})
@ -486,8 +486,8 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.NoError(t, err)
require.Equal(t, len(dest), 2)
testutils.AssertDeepEqual(t, dest[0].Film, film1)
testutils.AssertDeepEqual(t, dest[0].IDs, []int32{1, 2, 3, 4, 5, 6, 7, 8})
testutils.AssertDeepEqual(t, dest[1].Film, film2)
@ -502,8 +502,8 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.NoError(t, err)
require.Equal(t, len(dest), 2)
testutils.AssertDeepEqual(t, dest[0].Film, film1)
testutils.AssertDeepEqual(t, dest[0].IDs, []*int32{testutils.Int32Ptr(1), testutils.Int32Ptr(2), testutils.Int32Ptr(3), testutils.Int32Ptr(4),
testutils.Int32Ptr(5), testutils.Int32Ptr(6), testutils.Int32Ptr(7), testutils.Int32Ptr(8)})
@ -520,8 +520,8 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 10)
require.NoError(t, err)
require.Equal(t, len(dest), 10)
testutils.AssertDeepEqual(t, dest[0].Inventory, inventory1)
testutils.AssertDeepEqual(t, dest[0].Film, film1)
testutils.AssertDeepEqual(t, dest[0].Store, store1)
@ -538,8 +538,8 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 10)
require.NoError(t, err)
require.Equal(t, len(dest), 10)
testutils.AssertDeepEqual(t, dest[0].Inventory, &inventory1)
testutils.AssertDeepEqual(t, dest[0].Film, film1)
testutils.AssertDeepEqual(t, dest[0].Store, &store1)
@ -558,8 +558,8 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 10)
require.NoError(t, err)
require.Equal(t, len(dest), 10)
testutils.AssertDeepEqual(t, dest[0].Inventory, inventory1)
testutils.AssertDeepEqual(t, dest[0].Film, &film1)
testutils.AssertDeepEqual(t, dest[0].Store.Store, &store1)
@ -579,8 +579,8 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.NoError(t, err)
require.Equal(t, len(dest), 2)
testutils.AssertDeepEqual(t, dest[0].Film, film1)
testutils.AssertDeepEqual(t, len(dest[0].Inventories), 8)
testutils.AssertDeepEqual(t, dest[0].Inventories[0].Inventory, inventory1)
@ -601,14 +601,14 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.Equal(t, len(dest), 2)
testutils.AssertDeepEqual(t, dest[0].Film, film1)
assert.Equal(t, len(dest[0].Inventories), 8)
require.Equal(t, len(dest[0].Inventories), 8)
testutils.AssertDeepEqual(t, dest[0].Inventories[0].Inventory, inventory1)
assert.True(t, dest[0].Inventories[0].Rentals == nil)
assert.True(t, dest[0].Inventories[0].Rentals2 == nil)
require.True(t, dest[0].Inventories[0].Rentals == nil)
require.True(t, dest[0].Inventories[0].Rentals2 == nil)
})
})
@ -638,12 +638,12 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 108)
require.NoError(t, err)
require.Equal(t, len(dest), 108)
testutils.AssertDeepEqual(t, dest[100].Country, countryUk)
assert.Equal(t, len(dest[100].Cities), 8)
require.Equal(t, len(dest[100].Cities), 8)
testutils.AssertDeepEqual(t, dest[100].Cities[2].City, cityLondon)
assert.Equal(t, len(dest[100].Cities[2].Adresses), 2)
require.Equal(t, len(dest[100].Cities[2].Adresses), 2)
testutils.AssertDeepEqual(t, dest[100].Cities[2].Adresses[0].Address, address256)
testutils.AssertDeepEqual(t, dest[100].Cities[2].Adresses[0].Customer, customer256)
testutils.AssertDeepEqual(t, dest[100].Cities[2].Adresses[1].Address, addres517)
@ -667,12 +667,12 @@ func TestScanToSlice(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 108)
require.NoError(t, err)
require.Equal(t, len(dest), 108)
testutils.AssertDeepEqual(t, dest[100].Country, &countryUk)
assert.Equal(t, len(dest[100].Cities), 8)
require.Equal(t, len(dest[100].Cities), 8)
testutils.AssertDeepEqual(t, dest[100].Cities[2].City, &cityLondon)
assert.Equal(t, len(*dest[100].Cities[2].Adresses), 2)
require.Equal(t, len(*dest[100].Cities[2].Adresses), 2)
testutils.AssertDeepEqual(t, (*dest[100].Cities[2].Adresses)[0].Address, &address256)
testutils.AssertDeepEqual(t, (*dest[100].Cities[2].Adresses)[0].Customer, &customer256)
testutils.AssertDeepEqual(t, (*dest[100].Cities[2].Adresses)[1].Address, &addres517)
@ -703,7 +703,7 @@ func TestStructScanErrNoRows(t *testing.T) {
err := query.Query(db, &customer)
assert.Error(t, err, qrm.ErrNoRows.Error())
require.Error(t, err, qrm.ErrNoRows.Error())
}
func TestStructScanAllNull(t *testing.T) {
@ -716,7 +716,7 @@ func TestStructScanAllNull(t *testing.T) {
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertDeepEqual(t, dest, struct {
Null1 *int
Null2 *int

View file

@ -8,7 +8,7 @@ import (
"github.com/go-jet/jet/tests/.gentestdata/jetdb/dvds/model"
. "github.com/go-jet/jet/tests/.gentestdata/jetdb/dvds/table"
"github.com/go-jet/jet/tests/.gentestdata/jetdb/dvds/view"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
"time"
)
@ -33,7 +33,7 @@ WHERE actor.actor_id = 2;
actor := model.Actor{}
err := query.Query(db, &actor)
assert.NoError(t, err)
require.NoError(t, err)
expectedActor := model.Actor{
ActorID: 2,
@ -84,8 +84,8 @@ LIMIT 30;
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 30)
require.NoError(t, err)
require.Equal(t, len(dest), 30)
}
func TestSelect_ScanToSlice(t *testing.T) {
@ -110,9 +110,9 @@ ORDER BY customer.customer_id ASC;
testutils.AssertDebugStatementSql(t, query, expectedSQL)
err := query.Query(db, &customers)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(customers), 599)
require.Equal(t, len(customers), 599)
testutils.AssertDeepEqual(t, customer0, customers[0])
testutils.AssertDeepEqual(t, customer1, customers[1])
@ -164,7 +164,7 @@ LIMIT 12;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestJoinQueryStruct(t *testing.T) {
@ -253,10 +253,10 @@ LIMIT 1000;
err := query.Query(db, &languageActorFilm)
assert.NoError(t, err)
assert.Equal(t, len(languageActorFilm), 1)
assert.Equal(t, len(languageActorFilm[0].Films), 10)
assert.Equal(t, len(languageActorFilm[0].Films[0].Actors), 10)
require.NoError(t, err)
require.Equal(t, len(languageActorFilm), 1)
require.Equal(t, len(languageActorFilm[0].Films), 10)
require.Equal(t, len(languageActorFilm[0].Films[0].Actors), 10)
}
}
@ -302,20 +302,20 @@ LIMIT 15;
err := query.Query(db, &filmsPerLanguage)
assert.NoError(t, err)
assert.Equal(t, len(filmsPerLanguage), 1)
assert.Equal(t, len(filmsPerLanguage[0].Film), limit)
require.NoError(t, err)
require.Equal(t, len(filmsPerLanguage), 1)
require.Equal(t, len(filmsPerLanguage[0].Film), limit)
englishFilms := filmsPerLanguage[0]
assert.Equal(t, *englishFilms.Film[0].Rating, model.MpaaRating_Nc17)
require.Equal(t, *englishFilms.Film[0].Rating, model.MpaaRating_Nc17)
filmsPerLanguageWithPtrs := []*FilmsPerLanguage{}
err = query.Query(db, &filmsPerLanguageWithPtrs)
assert.NoError(t, err)
assert.Equal(t, len(filmsPerLanguage), 1)
assert.Equal(t, len(filmsPerLanguage[0].Film), limit)
require.NoError(t, err)
require.Equal(t, len(filmsPerLanguage), 1)
require.Equal(t, len(filmsPerLanguage[0].Film), limit)
}
func TestExecution1(t *testing.T) {
@ -359,14 +359,14 @@ ORDER BY city.city_id, address.address_id, customer.customer_id;
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 2)
assert.Equal(t, dest[0].City.City, "London")
assert.Equal(t, dest[1].City.City, "York")
assert.Equal(t, len(dest[0].Customers), 2)
assert.Equal(t, dest[0].Customers[0].LastName, "Hoffman")
assert.Equal(t, dest[0].Customers[1].LastName, "Vines")
require.Equal(t, len(dest), 2)
require.Equal(t, dest[0].City.City, "London")
require.Equal(t, dest[1].City.City, "York")
require.Equal(t, len(dest[0].Customers), 2)
require.Equal(t, dest[0].Customers[0].LastName, "Hoffman")
require.Equal(t, dest[0].Customers[1].LastName, "Vines")
}
@ -423,14 +423,14 @@ ORDER BY city.city_id, address.address_id, customer.customer_id;
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 2)
assert.Equal(t, dest[0].Name, "London")
assert.Equal(t, dest[1].Name, "York")
assert.Equal(t, len(dest[0].Customers), 2)
assert.Equal(t, *dest[0].Customers[0].LastName, "Hoffman")
assert.Equal(t, *dest[0].Customers[1].LastName, "Vines")
require.Equal(t, len(dest), 2)
require.Equal(t, dest[0].Name, "London")
require.Equal(t, dest[1].Name, "York")
require.Equal(t, len(dest[0].Customers), 2)
require.Equal(t, *dest[0].Customers[0].LastName, "Hoffman")
require.Equal(t, *dest[0].Customers[1].LastName, "Vines")
}
@ -481,14 +481,14 @@ ORDER BY city.city_id, address.address_id, customer.customer_id;
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 2)
assert.Equal(t, dest[0].CityName, "London")
assert.Equal(t, dest[1].CityName, "York")
assert.Equal(t, len(dest[0].Customers), 2)
assert.Equal(t, *dest[0].Customers[0].LastName, "Hoffman")
assert.Equal(t, *dest[0].Customers[1].LastName, "Vines")
require.Equal(t, len(dest), 2)
require.Equal(t, dest[0].CityName, "London")
require.Equal(t, dest[1].CityName, "York")
require.Equal(t, len(dest[0].Customers), 2)
require.Equal(t, *dest[0].Customers[0].LastName, "Hoffman")
require.Equal(t, *dest[0].Customers[1].LastName, "Vines")
}
func TestExecution4(t *testing.T) {
@ -538,8 +538,8 @@ ORDER BY city.city_id, address.address_id, customer.customer_id;
err := stmt.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 2)
require.NoError(t, err)
require.Equal(t, len(dest), 2)
testutils.AssertJSON(t, dest, `
[
{
@ -597,9 +597,9 @@ func TestJoinQuerySliceWithPtrs(t *testing.T) {
filmsPerLanguageWithPtrs := []*FilmsPerLanguage{}
err := query.Query(db, &filmsPerLanguageWithPtrs)
assert.NoError(t, err)
assert.Equal(t, len(filmsPerLanguageWithPtrs), 1)
assert.Equal(t, len(*filmsPerLanguageWithPtrs[0].Film), int(limit))
require.NoError(t, err)
require.Equal(t, len(filmsPerLanguageWithPtrs), 1)
require.Equal(t, len(*filmsPerLanguageWithPtrs[0].Film), int(limit))
}
func TestSelect_WithoutUniqueColumnSelected(t *testing.T) {
@ -609,11 +609,11 @@ func TestSelect_WithoutUniqueColumnSelected(t *testing.T) {
err := query.Query(db, &customers)
assert.NoError(t, err)
require.NoError(t, err)
//spew.Dump(customers)
assert.Equal(t, len(customers), 599)
require.Equal(t, len(customers), 599)
}
func TestSelectOrderByAscDesc(t *testing.T) {
@ -623,7 +623,7 @@ func TestSelectOrderByAscDesc(t *testing.T) {
ORDER_BY(Customer.FirstName.ASC()).
Query(db, &customersAsc)
assert.NoError(t, err)
require.NoError(t, err)
firstCustomerAsc := customersAsc[0]
lastCustomerAsc := customersAsc[len(customersAsc)-1]
@ -633,7 +633,7 @@ func TestSelectOrderByAscDesc(t *testing.T) {
ORDER_BY(Customer.FirstName.DESC()).
Query(db, &customersDesc)
assert.NoError(t, err)
require.NoError(t, err)
firstCustomerDesc := customersDesc[0]
lastCustomerDesc := customersDesc[len(customersAsc)-1]
@ -646,7 +646,7 @@ func TestSelectOrderByAscDesc(t *testing.T) {
ORDER_BY(Customer.FirstName.ASC(), Customer.LastName.DESC()).
Query(db, &customersAscDesc)
assert.NoError(t, err)
require.NoError(t, err)
customerAscDesc326 := model.Customer{
CustomerID: 67,
@ -702,16 +702,16 @@ ORDER BY customer.customer_id ASC;
err := query.Query(db, &allCustomersAndAddress)
assert.NoError(t, err)
assert.Equal(t, len(allCustomersAndAddress), 603)
require.NoError(t, err)
require.Equal(t, len(allCustomersAndAddress), 603)
testutils.AssertDeepEqual(t, allCustomersAndAddress[0].Customer, &customer0)
assert.True(t, allCustomersAndAddress[0].Address != nil)
require.True(t, allCustomersAndAddress[0].Address != nil)
lastCustomerAddress := allCustomersAndAddress[len(allCustomersAndAddress)-1]
assert.True(t, lastCustomerAddress.Customer == nil)
assert.True(t, lastCustomerAddress.Address != nil)
require.True(t, lastCustomerAddress.Customer == nil)
require.True(t, lastCustomerAddress.Address != nil)
}
@ -755,9 +755,9 @@ LIMIT 1000;
err := query.Query(db, &customerAddresCrosJoined)
assert.Equal(t, len(customerAddresCrosJoined), 1000)
require.Equal(t, len(customerAddresCrosJoined), 1000)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestSelectSelfJoin(t *testing.T) {
@ -813,11 +813,11 @@ ORDER BY f1.film_id ASC;
err := query.Query(db, &theSameLengthFilms)
assert.NoError(t, err)
require.NoError(t, err)
//spew.Dump(theSameLengthFilms)
//assert.Equal(t, len(theSameLengthFilms), 100)
//require.Equal(t, len(theSameLengthFilms), 100)
}
func TestSelectAliasColumn(t *testing.T) {
@ -854,11 +854,11 @@ LIMIT 1000;
err := query.Query(db, &films)
assert.NoError(t, err)
require.NoError(t, err)
//spew.Dump(films)
assert.Equal(t, len(films), 1000)
require.Equal(t, len(films), 1000)
testutils.AssertDeepEqual(t, films[0], thesameLengthFilms{"Alien Center", "Iron Moon", 46})
}
@ -911,7 +911,7 @@ FROM dvds.actor
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestSelectFunctions(t *testing.T) {
@ -931,8 +931,8 @@ FROM dvds.film;
err := query.Query(db, &ret)
assert.NoError(t, err)
assert.Equal(t, ret.MaxFilmRate, 4.99)
require.NoError(t, err)
require.Equal(t, ret.MaxFilmRate, 4.99)
}
func TestSelectQueryScalar(t *testing.T) {
@ -973,9 +973,9 @@ ORDER BY film.film_id ASC;
maxRentalRateFilms := []model.Film{}
err := query.Query(db, &maxRentalRateFilms)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(maxRentalRateFilms), 336)
require.Equal(t, len(maxRentalRateFilms), 336)
gRating := model.MpaaRating_G
@ -1060,11 +1060,11 @@ ORDER BY customer.customer_id, SUM(payment.amount) ASC;
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//testutils.PrintJson(dest)
assert.Equal(t, len(dest), 104)
require.Equal(t, len(dest), 104)
//testutils.SaveJsonFile(dest, "postgres/testdata/customer_payment_sum.json")
testutils.AssertJSONFile(t, dest, "./testdata/results/postgres/customer_payment_sum.json")
@ -1121,8 +1121,8 @@ ORDER BY customer_payment_sum."amount_sum" ASC;
customersWithAmounts := []CustomerWithAmounts{}
err := query.Query(db, &customersWithAmounts)
assert.NoError(t, err)
assert.Equal(t, len(customersWithAmounts), 599)
require.NoError(t, err)
require.Equal(t, len(customersWithAmounts), 599)
testutils.AssertDeepEqual(t, customersWithAmounts[0].Customer, &model.Customer{
CustomerID: 318,
@ -1137,7 +1137,7 @@ ORDER BY customer_payment_sum."amount_sum" ASC;
Active: testutils.Int32Ptr(1),
})
assert.Equal(t, customersWithAmounts[0].AmountSum, 27.93)
require.Equal(t, customersWithAmounts[0].AmountSum, 27.93)
}
func TestSelectStaff(t *testing.T) {
@ -1145,7 +1145,7 @@ func TestSelectStaff(t *testing.T) {
err := Staff.SELECT(Staff.AllColumns).Query(db, &staffs)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertJSON(t, staffs, `
[
@ -1203,11 +1203,11 @@ ORDER BY payment.payment_date ASC;
err := query.Query(db, &payments)
assert.NoError(t, err)
require.NoError(t, err)
//spew.Dump(payments)
assert.Equal(t, len(payments), 9)
require.Equal(t, len(payments), 9)
testutils.AssertDeepEqual(t, payments[0], model.Payment{
PaymentID: 17793,
CustomerID: 416,
@ -1257,8 +1257,8 @@ OFFSET 20;
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 10)
require.NoError(t, err)
require.Equal(t, len(dest), 10)
testutils.AssertDeepEqual(t, dest[0], model.Payment{
PaymentID: 17523,
Amount: 4.99,
@ -1283,8 +1283,8 @@ func TestAllSetOperators(t *testing.T) {
dest := []model.Payment{}
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 20)
require.NoError(t, err)
require.Equal(t, len(dest), 20)
})
t.Run("UNION_ALL", func(t *testing.T) {
@ -1293,8 +1293,8 @@ func TestAllSetOperators(t *testing.T) {
dest := []model.Payment{}
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 20)
require.NoError(t, err)
require.Equal(t, len(dest), 20)
})
t.Run("INTERSECT", func(t *testing.T) {
@ -1303,8 +1303,8 @@ func TestAllSetOperators(t *testing.T) {
dest := []model.Payment{}
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 0)
require.NoError(t, err)
require.Equal(t, len(dest), 0)
})
t.Run("INTERSECT_ALL", func(t *testing.T) {
@ -1313,8 +1313,8 @@ func TestAllSetOperators(t *testing.T) {
dest := []model.Payment{}
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 0)
require.NoError(t, err)
require.Equal(t, len(dest), 0)
})
t.Run("EXCEPT", func(t *testing.T) {
@ -1323,8 +1323,8 @@ func TestAllSetOperators(t *testing.T) {
dest := []model.Payment{}
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 10)
require.NoError(t, err)
require.Equal(t, len(dest), 10)
})
t.Run("EXCEPT_ALL", func(t *testing.T) {
@ -1333,8 +1333,8 @@ func TestAllSetOperators(t *testing.T) {
dest := []model.Payment{}
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 10)
require.NoError(t, err)
require.Equal(t, len(dest), 10)
})
}
@ -1363,10 +1363,10 @@ LIMIT 20;
err := query.Query(db, &dest)
assert.NoError(t, err)
assert.Equal(t, len(dest), 20)
assert.Equal(t, dest[0].StaffIDNum, "TWO")
assert.Equal(t, dest[1].StaffIDNum, "ONE")
require.NoError(t, err)
require.Equal(t, len(dest), 20)
require.Equal(t, dest[0].StaffIDNum, "TWO")
require.Equal(t, dest[1].StaffIDNum, "ONE")
}
func getRowLockTestData() map[RowLock]string {
@ -1396,12 +1396,12 @@ FOR`
tx, _ := db.Begin()
res, err := query.Exec(tx)
assert.NoError(t, err)
require.NoError(t, err)
rowsAffected, _ := res.RowsAffected()
assert.Equal(t, rowsAffected, int64(3))
require.Equal(t, rowsAffected, int64(3))
err = tx.Rollback()
assert.NoError(t, err)
require.NoError(t, err)
}
for lockType, lockTypeStr := range getRowLockTestData() {
@ -1412,12 +1412,12 @@ FOR`
tx, _ := db.Begin()
res, err := query.Exec(tx)
assert.NoError(t, err)
require.NoError(t, err)
rowsAffected, _ := res.RowsAffected()
assert.Equal(t, rowsAffected, int64(3))
require.Equal(t, rowsAffected, int64(3))
err = tx.Rollback()
assert.NoError(t, err)
require.NoError(t, err)
}
for lockType, lockTypeStr := range getRowLockTestData() {
@ -1428,12 +1428,12 @@ FOR`
tx, _ := db.Begin()
res, err := query.Exec(tx)
assert.NoError(t, err)
require.NoError(t, err)
rowsAffected, _ := res.RowsAffected()
assert.Equal(t, rowsAffected, int64(3))
require.Equal(t, rowsAffected, int64(3))
err = tx.Rollback()
assert.NoError(t, err)
require.NoError(t, err)
}
}
@ -1509,7 +1509,7 @@ ORDER BY actor.actor_id ASC, film.film_id ASC;
}
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//jsonSave("./testdata/quick-start-dest.json", dest)
testutils.AssertJSONFile(t, dest, "./testdata/results/postgres/quick-start-dest.json")
@ -1522,7 +1522,7 @@ ORDER BY actor.actor_id ASC, film.film_id ASC;
}
err = stmt.Query(db, &dest2)
assert.NoError(t, err)
require.NoError(t, err)
//jsonSave("./testdata/quick-start-dest2.json", dest2)
testutils.AssertJSONFile(t, dest2, "./testdata/results/postgres/quick-start-dest2.json")
@ -1574,7 +1574,7 @@ func TestQuickStartWithSubQueries(t *testing.T) {
}
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
//jsonSave("./testdata/quick-start-dest.json", dest)
testutils.AssertJSONFile(t, dest, "./testdata/results/postgres/quick-start-dest.json")
@ -1587,7 +1587,7 @@ func TestQuickStartWithSubQueries(t *testing.T) {
}
err = stmt.Query(db, &dest2)
assert.NoError(t, err)
require.NoError(t, err)
//jsonSave("./testdata/quick-start-dest2.json", dest2)
testutils.AssertJSONFile(t, dest2, "./testdata/results/postgres/quick-start-dest2.json")
@ -1620,7 +1620,7 @@ SELECT true,
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestWindowFunction(t *testing.T) {
@ -1692,7 +1692,7 @@ GROUP BY payment.amount, payment.customer_id, payment.payment_date;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestWindowClause(t *testing.T) {
@ -1729,7 +1729,7 @@ ORDER BY payment.customer_id;
dest := []struct{}{}
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
}
func TestSimpleView(t *testing.T) {
@ -1751,7 +1751,7 @@ func TestSimpleView(t *testing.T) {
var dest []ActorInfo
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
testutils.AssertJSON(t, dest[1:2], `
[
@ -1785,11 +1785,11 @@ func TestJoinViewWithTable(t *testing.T) {
fmt.Println(query.DebugSql())
err := query.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 2)
assert.Equal(t, len(dest[0].Rentals), 32)
assert.Equal(t, len(dest[1].Rentals), 27)
require.Equal(t, len(dest), 2)
require.Equal(t, len(dest[0].Rentals), 32)
require.Equal(t, len(dest[1].Rentals), 27)
}
func TestDynamicProjectionList(t *testing.T) {
@ -1834,9 +1834,9 @@ LIMIT 3;
`)
var dest []model.Customer
err := stmt.Query(db, &dest)
assert.NoError(t, err)
require.NoError(t, err)
assert.Equal(t, len(dest), 3)
require.Equal(t, len(dest), 3)
}
func TestDynamicCondition(t *testing.T) {
@ -1884,7 +1884,7 @@ WHERE ($1 AND (customer.customer_id = $2)) AND (customer.activebool = $3);
dest := []model.Customer{}
err := stmt.Query(db, &dest)
assert.NoError(t, err)
assert.Len(t, dest, 1)
require.NoError(t, err)
require.Len(t, dest, 1)
testutils.AssertDeepEqual(t, dest[0], customer0)
}

View file

@ -6,7 +6,6 @@ import (
. "github.com/go-jet/jet/postgres"
"github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/model"
. "github.com/go-jet/jet/tests/.gentestdata/jetdb/test_sample/table"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
"time"
@ -143,10 +142,10 @@ RETURNING link.id AS "link.id",
err := stmt.Query(db, &links)
assert.NoError(t, err)
assert.Equal(t, len(links), 2)
assert.Equal(t, links[0].Name, "DuckDuckGo")
assert.Equal(t, links[1].Name, "DuckDuckGo")
require.NoError(t, err)
require.Equal(t, len(links), 2)
require.Equal(t, links[0].Name, "DuckDuckGo")
require.Equal(t, links[1].Name, "DuckDuckGo")
}
func TestUpdateWithSelect(t *testing.T) {
@ -294,7 +293,7 @@ func TestUpdateWithInvalidModelData(t *testing.T) {
defer func() {
r := recover()
assert.Equal(t, r, "missing struct field for column : id")
require.Equal(t, r, "missing struct field for column : id")
}()
setupLinkTableForUpdateTest(t)
@ -342,7 +341,7 @@ func TestUpdateQueryContext(t *testing.T) {
dest := []model.Link{}
err := updateStmt.QueryContext(ctx, db, &dest)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func TestUpdateExecContext(t *testing.T) {
@ -360,7 +359,7 @@ func TestUpdateExecContext(t *testing.T) {
_, err := updateStmt.ExecContext(ctx, db)
assert.Error(t, err, "context deadline exceeded")
require.Error(t, err, "context deadline exceeded")
}
func setupLinkTableForUpdateTest(t *testing.T) {
@ -375,10 +374,10 @@ func setupLinkTableForUpdateTest(t *testing.T) {
VALUES(204, "http://www.bing.com", "Bing", DEFAULT).
Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}
func cleanUpLinkTable(t *testing.T) {
_, err := Link.DELETE().WHERE(Link.ID.GT(Int(0))).Exec(db)
assert.NoError(t, err)
require.NoError(t, err)
}

View file

@ -4,7 +4,6 @@ import (
"github.com/go-jet/jet/internal/jet"
"github.com/go-jet/jet/internal/testutils"
"github.com/go-jet/jet/tests/.gentestdata/jetdb/dvds/model"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
"testing"
)
@ -14,8 +13,8 @@ func AssertExec(t *testing.T, stmt jet.Statement, rowsAffected int64) {
require.NoError(t, err)
rows, err := res.RowsAffected()
assert.NoError(t, err)
assert.Equal(t, rows, rowsAffected)
require.NoError(t, err)
require.Equal(t, rows, rowsAffected)
}
var customer0 = model.Customer{