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

@ -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)
}