MCPcopy
hub / github.com/go-gorm/gorm / TestMigrateColumnOrder

Function TestMigrateColumnOrder

tests/migrate_test.go:871–937  ·  view source on GitHub ↗

check column order after migration, flaky test https://github.com/go-gorm/gorm/issues/4351

(t *testing.T)

Source from the content-addressed store, hash-verified

869// check column order after migration, flaky test
870// https://github.com/go-gorm/gorm/issues/4351
871func TestMigrateColumnOrder(t *testing.T) {
872 type UserMigrateColumn struct {
873 ID uint
874 }
875 DB.Migrator().DropTable(&UserMigrateColumn{})
876 DB.AutoMigrate(&UserMigrateColumn{})
877
878 type UserMigrateColumn2 struct {
879 ID uint
880 F1 string
881 F2 string
882 F3 string
883 F4 string
884 F5 string
885 F6 string
886 F7 string
887 F8 string
888 F9 string
889 F10 string
890 F11 string
891 F12 string
892 F13 string
893 F14 string
894 F15 string
895 F16 string
896 F17 string
897 F18 string
898 F19 string
899 F20 string
900 F21 string
901 F22 string
902 F23 string
903 F24 string
904 F25 string
905 F26 string
906 F27 string
907 F28 string
908 F29 string
909 F30 string
910 F31 string
911 F32 string
912 F33 string
913 F34 string
914 F35 string
915 }
916 if err := DB.Table("user_migrate_columns").AutoMigrate(&UserMigrateColumn2{}); err != nil {
917 t.Fatalf("failed to auto migrate, got error: %v", err)
918 }
919
920 columnTypes, err := DB.Table("user_migrate_columns").Migrator().ColumnTypes(&UserMigrateColumn2{})
921 if err != nil {
922 t.Fatalf("failed to get column types, got error: %v", err)
923 }
924 typ := reflect.Indirect(reflect.ValueOf(&UserMigrateColumn2{})).Type()
925 numField := typ.NumField()
926 if numField != len(columnTypes) {
927 t.Fatalf("column's number not match struct and ddl, %d != %d", numField, len(columnTypes))
928 }

Callers

nothing calls this directly

Calls 8

ColumnNameMethod · 0.95
DropTableMethod · 0.65
MigratorMethod · 0.65
AutoMigrateMethod · 0.65
TableMethod · 0.65
ColumnTypesMethod · 0.65
TypeMethod · 0.65
NameMethod · 0.65

Tested by

no test coverage detected