Skip to content

Commit

Permalink
test: re-migrate existing table
Browse files Browse the repository at this point in the history
  • Loading branch information
iTanken committed May 7, 2024
1 parent 4f84925 commit ed0127e
Show file tree
Hide file tree
Showing 5 changed files with 31 additions and 42 deletions.
1 change: 0 additions & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,6 @@ jobs:
run: GORM_ENABLE_CACHE=true GORM_DIALECT=postgres GORM_DSN="user=gorm password=gorm dbname=gorm host=localhost port=9920 sslmode=disable TimeZone=Asia/Shanghai" ./test.sh

sqlserver:
needs: sqlite
strategy:
matrix:
go: ['1.21']
Expand Down
21 changes: 0 additions & 21 deletions gen.go

This file was deleted.

27 changes: 10 additions & 17 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,33 +3,26 @@ module gorm.io/playground
go 1.20

require (
gorm.io/driver/mysql v1.5.2
gorm.io/driver/postgres v1.5.2
gorm.io/driver/sqlite v1.5.3
gorm.io/driver/sqlserver v1.5.1
gorm.io/gen v0.3.25
gorm.io/gorm v1.25.4
gorm.io/driver/mysql v1.5.6
gorm.io/driver/postgres v1.5.7
gorm.io/driver/sqlite v1.5.5
gorm.io/driver/sqlserver v1.5.3
gorm.io/gorm v1.25.10
)

require (
github.com/go-sql-driver/mysql v1.7.1 // indirect
github.com/golang-sql/civil v0.0.0-20220223132316-b832511892a9 // indirect
github.com/golang-sql/sqlexp v0.1.0 // indirect
github.com/google/uuid v1.3.1 // indirect
github.com/jackc/pgpassfile v1.0.0 // indirect
github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a // indirect
github.com/jackc/pgx/v5 v5.4.3 // indirect
github.com/jinzhu/inflection v1.0.0 // indirect
github.com/jinzhu/now v1.1.5 // indirect
github.com/mattn/go-sqlite3 v1.14.17 // indirect
github.com/microsoft/go-mssqldb v1.5.0 // indirect
golang.org/x/crypto v0.14.0 // indirect
golang.org/x/mod v0.14.0 // indirect
golang.org/x/sys v0.14.0 // indirect
golang.org/x/text v0.13.0 // indirect
golang.org/x/tools v0.15.0 // indirect
gorm.io/datatypes v1.1.1-0.20230130040222-c43177d3cf8c // indirect
gorm.io/hints v1.1.0 // indirect
gorm.io/plugin/dbresolver v1.5.0 // indirect
github.com/microsoft/go-mssqldb v1.6.0 // indirect
golang.org/x/crypto v0.15.0 // indirect
golang.org/x/net v0.18.0 // indirect
golang.org/x/text v0.14.0 // indirect
)

replace gorm.io/gorm => ./gorm
22 changes: 20 additions & 2 deletions main_test.go
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
package main

import (
"errors"
"testing"

"gorm.io/gorm"
)

// GORM_REPO: https://github.com/go-gorm/gorm.git
// GORM_BRANCH: master
// TEST_DRIVERS: sqlite, mysql, postgres, sqlserver
// TEST_DRIVERS: sqlserver

func TestGORM(t *testing.T) {
user := User{Name: "jinzhu"}
Expand All @@ -15,6 +18,21 @@ func TestGORM(t *testing.T) {

var result User
if err := DB.First(&result, user.ID).Error; err != nil {
t.Errorf("Failed, got error: %v", err)
if !errors.Is(err, gorm.ErrRecordNotFound) {
t.Errorf("Failed, got error: %v", err)
}
}
}

func TestReMigrate(t *testing.T) {
// re-migrate existing table
u := &User{}
if !DB.Migrator().HasTable(u) {
if err := DB.AutoMigrate(u); err != nil {
t.Fatalf("Failed to auto migrate, but got error %v\n", err)
}
}
if err := DB.AutoMigrate(u); err != nil {
t.Fatalf("Failed to auto migrate, but got error %v\n", err)
}
}
2 changes: 1 addition & 1 deletion test.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash -e

dialects=("sqlite" "mysql" "postgres" "sqlserver")
dialects=("sqlserver")

if [ "$GORM_ENABLE_CACHE" = "" ]
then
Expand Down

0 comments on commit ed0127e

Please sign in to comment.