test: fixed broken tests
This commit is contained in:
parent
54af94146e
commit
5bd20f3121
@ -7,40 +7,36 @@ import (
|
|||||||
"gorm.io/gorm"
|
"gorm.io/gorm"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type City struct {
|
||||||
|
gorm.Model
|
||||||
|
Name string `gorm:"unique"`
|
||||||
|
}
|
||||||
|
|
||||||
func TestPostgresErrorTranslator(t *testing.T) {
|
func TestPostgresErrorTranslator(t *testing.T) {
|
||||||
if DB.Dialector.Name() != "postgres" {
|
if DB.Dialector.Name() != "postgres" {
|
||||||
t.Skip()
|
t.Skip()
|
||||||
}
|
}
|
||||||
|
|
||||||
type Product struct {
|
DB.Migrator().DropTable(&City{})
|
||||||
gorm.Model
|
|
||||||
Name string `gorm:"unique"`
|
if err := DB.AutoMigrate(&City{}); err != nil {
|
||||||
|
t.Fatalf("Failed to migrate cities table, got error: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
DB.Migrator().DropTable(&Product{})
|
err := DB.Create(&City{Name: "Amsterdam"}).Error
|
||||||
|
|
||||||
if err := DB.AutoMigrate(&Product{}); err != nil {
|
|
||||||
t.Fatalf("Failed to migrate: %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
err := DB.Create(&Product{Name: "Milk"}).Error
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("errors happened on create: %v", err)
|
t.Fatalf("errors happened on create: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// test errors to be translated
|
// test errors to be translated
|
||||||
|
err = DB.Create(&City{Name: "Amsterdam"}).Error
|
||||||
err = DB.Create(&Product{Name: "Milk"}).Error
|
|
||||||
if !errors.Is(err, gorm.ErrDuplicatedKey) {
|
if !errors.Is(err, gorm.ErrDuplicatedKey) {
|
||||||
t.Fatalf("expected err: %v got err: %v", gorm.ErrDuplicatedKey, err)
|
t.Fatalf("expected err: %v got err: %v", gorm.ErrDuplicatedKey, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// test default errors to not be translated
|
// test default errors to not be translated
|
||||||
|
err = DB.Where("name = ?", "Kabul").First(&City{}).Error
|
||||||
var product Product
|
if err == nil || !errors.Is(err, gorm.ErrRecordNotFound) {
|
||||||
|
|
||||||
err = DB.Find(&product, "name = ?", "coffee").Error
|
|
||||||
if !errors.Is(err, gorm.ErrRecordNotFound) {
|
|
||||||
t.Fatalf("expected err: %v got err: %v", gorm.ErrRecordNotFound, err)
|
t.Fatalf("expected err: %v got err: %v", gorm.ErrRecordNotFound, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -50,35 +46,26 @@ func TestMysqlErrorTranslator(t *testing.T) {
|
|||||||
t.Skip()
|
t.Skip()
|
||||||
}
|
}
|
||||||
|
|
||||||
type Product struct {
|
DB.Migrator().DropTable(&City{})
|
||||||
gorm.Model
|
|
||||||
Name string `gorm:"unique"`
|
if err := DB.AutoMigrate(&City{}); err != nil {
|
||||||
|
t.Fatalf("Failed to migrate cities table, got error: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
DB.Migrator().DropTable(&Product{})
|
err := DB.Create(&City{Name: "Berlin"}).Error
|
||||||
|
|
||||||
if err := DB.AutoMigrate(&Product{}); err != nil {
|
|
||||||
t.Fatalf("Failed to migrate: %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
err := DB.Create(&Product{Name: "Milk"}).Error
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("errors happened on create: %v", err)
|
t.Fatalf("errors happened on create: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// test errors to be translated
|
// test errors to be translated
|
||||||
|
err = DB.Create(&City{Name: "Berlin"}).Error
|
||||||
err = DB.Create(&Product{Name: "Milk"}).Error
|
|
||||||
if !errors.Is(err, gorm.ErrDuplicatedKey) {
|
if !errors.Is(err, gorm.ErrDuplicatedKey) {
|
||||||
t.Fatalf("expected err: %v got err: %v", gorm.ErrDuplicatedKey, err)
|
t.Fatalf("expected err: %v got err: %v", gorm.ErrDuplicatedKey, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// test default errors to not be translated
|
// test default errors to not be translated
|
||||||
|
err = DB.Where("name = ?", "Istanbul").First(&City{}).Error
|
||||||
var product Product
|
if err == nil || !errors.Is(err, gorm.ErrRecordNotFound) {
|
||||||
|
|
||||||
err = DB.Find(&product, "name = ?", "coffee").Error
|
|
||||||
if !errors.Is(err, gorm.ErrRecordNotFound) {
|
|
||||||
t.Fatalf("expected err: %v got err: %v", gorm.ErrRecordNotFound, err)
|
t.Fatalf("expected err: %v got err: %v", gorm.ErrRecordNotFound, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -88,35 +75,26 @@ func TestMssqlErrorTranslator(t *testing.T) {
|
|||||||
t.Skip()
|
t.Skip()
|
||||||
}
|
}
|
||||||
|
|
||||||
type Product struct {
|
DB.Migrator().DropTable(&City{})
|
||||||
gorm.Model
|
|
||||||
Name string `gorm:"unique"`
|
if err := DB.AutoMigrate(&City{}); err != nil {
|
||||||
|
t.Fatalf("Failed to migrate cities table, got error: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
DB.Migrator().DropTable(&Product{})
|
err := DB.Create(&City{Name: "Paris"}).Error
|
||||||
|
|
||||||
if err := DB.AutoMigrate(&Product{}); err != nil {
|
|
||||||
t.Fatalf("Failed to migrate: %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
err := DB.Create(&Product{Name: "Milk"}).Error
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("errors happened on create: %v", err)
|
t.Fatalf("errors happened on create: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// test errors to be translated
|
// test errors to be translated
|
||||||
|
err = DB.Create(&City{Name: "Paris"}).Error
|
||||||
err = DB.Create(&Product{Name: "Milk"}).Error
|
|
||||||
if !errors.Is(err, gorm.ErrDuplicatedKey) {
|
if !errors.Is(err, gorm.ErrDuplicatedKey) {
|
||||||
t.Fatalf("expected err: %v got err: %v", gorm.ErrDuplicatedKey, err)
|
t.Fatalf("expected err: %v got err: %v", gorm.ErrDuplicatedKey, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// test default errors to not be translated
|
// test default errors to not be translated
|
||||||
|
err = DB.Where("name = ?", "Prague").First(&City{}).Error
|
||||||
var product Product
|
if err == nil || !errors.Is(err, gorm.ErrRecordNotFound) {
|
||||||
|
|
||||||
err = DB.Find(&product, "name = ?", "coffee").Error
|
|
||||||
if !errors.Is(err, gorm.ErrRecordNotFound) {
|
|
||||||
t.Fatalf("expected err: %v got err: %v", gorm.ErrRecordNotFound, err)
|
t.Fatalf("expected err: %v got err: %v", gorm.ErrRecordNotFound, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -126,35 +104,26 @@ func TestSqliteErrorTranslator(t *testing.T) {
|
|||||||
t.Skip()
|
t.Skip()
|
||||||
}
|
}
|
||||||
|
|
||||||
type Product struct {
|
DB.Migrator().DropTable(&City{})
|
||||||
gorm.Model
|
|
||||||
Name string `gorm:"unique"`
|
if err := DB.AutoMigrate(&City{}); err != nil {
|
||||||
|
t.Fatalf("Failed to migrate cities table, got error: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
DB.Migrator().DropTable(&Product{})
|
err := DB.Create(&City{Name: "Madrid"}).Error
|
||||||
|
|
||||||
if err := DB.AutoMigrate(&Product{}); err != nil {
|
|
||||||
t.Fatalf("Failed to migrate: %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
err := DB.Create(&Product{Name: "Milk"}).Error
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("errors happened on create: %v", err)
|
t.Fatalf("errors happened on create: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// test errors to be translated
|
// test errors to be translated
|
||||||
|
err = DB.Create(&City{Name: "Madrid"}).Error
|
||||||
err = DB.Create(&Product{Name: "Milk"}).Error
|
|
||||||
if !errors.Is(err, gorm.ErrDuplicatedKey) {
|
if !errors.Is(err, gorm.ErrDuplicatedKey) {
|
||||||
t.Fatalf("expected err: %v got err: %v", gorm.ErrDuplicatedKey, err)
|
t.Fatalf("expected err: %v got err: %v", gorm.ErrDuplicatedKey, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// test default errors to not be translated
|
// test default errors to not be translated
|
||||||
|
err = DB.Where("name = ?", "Rome").First(&City{}).Error
|
||||||
var product Product
|
if err == nil || !errors.Is(err, gorm.ErrRecordNotFound) {
|
||||||
|
|
||||||
err = DB.Find(&product, "name = ?", "coffee").Error
|
|
||||||
if !errors.Is(err, gorm.ErrRecordNotFound) {
|
|
||||||
t.Fatalf("expected err: %v got err: %v", gorm.ErrRecordNotFound, err)
|
t.Fatalf("expected err: %v got err: %v", gorm.ErrRecordNotFound, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user