完善测试建表并统一前端格式
This commit is contained in:
@@ -4,6 +4,8 @@ import (
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
"hfb_sys/backend/internal/model"
|
||||
|
||||
"gorm.io/driver/sqlite"
|
||||
"gorm.io/gorm"
|
||||
"gorm.io/gorm/logger"
|
||||
@@ -31,3 +33,39 @@ func NewTestDBWithName(name string) *gorm.DB {
|
||||
}
|
||||
return db
|
||||
}
|
||||
|
||||
// MigrateListingLifecycleTestSchema 创建商品生命周期测试所需的共享表结构。
|
||||
func MigrateListingLifecycleTestSchema(db *gorm.DB) error {
|
||||
return db.AutoMigrate(
|
||||
&model.User{},
|
||||
&model.GameAccount{},
|
||||
&model.RentalListing{},
|
||||
&model.ListingStatusEvent{},
|
||||
)
|
||||
}
|
||||
|
||||
// MigrateRentalTransactionTestSchema 在商品生命周期基础上创建订单、支付和交接测试所需的共享表结构。
|
||||
func MigrateRentalTransactionTestSchema(db *gorm.DB) error {
|
||||
if err := MigrateListingLifecycleTestSchema(db); err != nil {
|
||||
return err
|
||||
}
|
||||
return db.AutoMigrate(
|
||||
&model.RentalOrder{},
|
||||
&model.PaymentOrder{},
|
||||
&model.Notification{},
|
||||
&model.HandoffRecord{},
|
||||
&model.OrderCheckout{},
|
||||
&model.AuditLog{},
|
||||
&model.ChatConversation{},
|
||||
&model.ChatParticipant{},
|
||||
&model.ChatMessage{},
|
||||
)
|
||||
}
|
||||
|
||||
// MigrateRentalDisputeTestSchema 在交易链路基础上创建申诉测试所需的表结构。
|
||||
func MigrateRentalDisputeTestSchema(db *gorm.DB) error {
|
||||
if err := MigrateRentalTransactionTestSchema(db); err != nil {
|
||||
return err
|
||||
}
|
||||
return db.AutoMigrate(&model.Dispute{})
|
||||
}
|
||||
|
||||
@@ -5,31 +5,16 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"hfb_sys/backend/internal/database"
|
||||
"hfb_sys/backend/internal/model"
|
||||
|
||||
"gorm.io/driver/sqlite"
|
||||
"gorm.io/gorm"
|
||||
"gorm.io/gorm/logger"
|
||||
)
|
||||
|
||||
func setupDisputeTestDB(t *testing.T) *gorm.DB {
|
||||
t.Helper()
|
||||
db, err := gorm.Open(sqlite.Open(":memory:"), &gorm.Config{
|
||||
Logger: logger.Default.LogMode(logger.Silent),
|
||||
})
|
||||
if err != nil {
|
||||
t.Fatalf("无法创建测试数据库: %v", err)
|
||||
}
|
||||
if err := db.AutoMigrate(
|
||||
&model.User{},
|
||||
&model.GameAccount{},
|
||||
&model.RentalListing{},
|
||||
&model.RentalOrder{},
|
||||
&model.OrderCheckout{},
|
||||
&model.HandoffRecord{},
|
||||
&model.Dispute{},
|
||||
&model.Notification{},
|
||||
); err != nil {
|
||||
db := database.NewTestDB()
|
||||
if err := database.MigrateRentalDisputeTestSchema(db); err != nil {
|
||||
t.Fatalf("数据库迁移失败: %v", err)
|
||||
}
|
||||
return db
|
||||
|
||||
@@ -143,7 +143,7 @@ func TestPublishCooldownCanBeDisabled(t *testing.T) {
|
||||
|
||||
func TestRepositoryCreateRejectsRecentOwnerPublish(t *testing.T) {
|
||||
db := database.NewTestDB()
|
||||
if err := db.AutoMigrate(&model.User{}, &model.GameAccount{}, &model.RentalListing{}); err != nil {
|
||||
if err := database.MigrateListingLifecycleTestSchema(db); err != nil {
|
||||
t.Fatalf("failed to migrate test db: %v", err)
|
||||
}
|
||||
user := model.User{Phone: "18800000000", RealnameStatus: "verified", Status: "active"}
|
||||
@@ -175,7 +175,7 @@ func TestRepositoryCreateRejectsRecentOwnerPublish(t *testing.T) {
|
||||
|
||||
func TestRepositoryUpdateAllowsOfflineListingResubmit(t *testing.T) {
|
||||
db := database.NewTestDB()
|
||||
if err := db.AutoMigrate(&model.GameAccount{}, &model.RentalListing{}); err != nil {
|
||||
if err := database.MigrateListingLifecycleTestSchema(db); err != nil {
|
||||
t.Fatalf("failed to migrate test db: %v", err)
|
||||
}
|
||||
repo := NewRepository(db, nil)
|
||||
@@ -215,7 +215,7 @@ func TestRepositoryUpdateAllowsOfflineListingResubmit(t *testing.T) {
|
||||
|
||||
func TestRepositoryRejectsCompletedListingOwnerMutations(t *testing.T) {
|
||||
db := database.NewTestDB()
|
||||
if err := db.AutoMigrate(&model.GameAccount{}, &model.RentalListing{}); err != nil {
|
||||
if err := database.MigrateListingLifecycleTestSchema(db); err != nil {
|
||||
t.Fatalf("failed to migrate test db: %v", err)
|
||||
}
|
||||
repo := NewRepository(db, nil)
|
||||
|
||||
@@ -4,34 +4,18 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"hfb_sys/backend/internal/database"
|
||||
"hfb_sys/backend/internal/model"
|
||||
|
||||
"gorm.io/datatypes"
|
||||
"gorm.io/driver/sqlite"
|
||||
"gorm.io/gorm"
|
||||
"gorm.io/gorm/logger"
|
||||
)
|
||||
|
||||
// setupTestDB 创建测试数据库
|
||||
// setupOrderTestDB 创建订单测试数据库。
|
||||
func setupOrderTestDB(t *testing.T) *gorm.DB {
|
||||
db, err := gorm.Open(sqlite.Open(":memory:"), &gorm.Config{
|
||||
Logger: logger.Default.LogMode(logger.Silent),
|
||||
})
|
||||
if err != nil {
|
||||
t.Fatalf("无法创建测试数据库: %v", err)
|
||||
}
|
||||
|
||||
if err := db.AutoMigrate(
|
||||
&model.User{},
|
||||
&model.GameAccount{},
|
||||
&model.RentalListing{},
|
||||
&model.RentalOrder{},
|
||||
&model.PaymentOrder{},
|
||||
&model.Notification{},
|
||||
&model.HandoffRecord{},
|
||||
&model.OrderCheckout{},
|
||||
&model.AuditLog{},
|
||||
); err != nil {
|
||||
t.Helper()
|
||||
db := database.NewTestDB()
|
||||
if err := database.MigrateRentalTransactionTestSchema(db); err != nil {
|
||||
t.Fatalf("数据库迁移失败: %v", err)
|
||||
}
|
||||
|
||||
|
||||
@@ -6,34 +6,18 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"hfb_sys/backend/internal/database"
|
||||
"hfb_sys/backend/internal/model"
|
||||
ordermodule "hfb_sys/backend/internal/modules/order"
|
||||
|
||||
"gorm.io/driver/sqlite"
|
||||
"gorm.io/gorm"
|
||||
"gorm.io/gorm/logger"
|
||||
)
|
||||
|
||||
// setupPaymentTestDB 创建测试数据库
|
||||
func setupPaymentTestDB(t *testing.T) *gorm.DB {
|
||||
db, err := gorm.Open(sqlite.Open(":memory:"), &gorm.Config{
|
||||
Logger: logger.Default.LogMode(logger.Silent),
|
||||
})
|
||||
if err != nil {
|
||||
t.Fatalf("无法创建测试数据库: %v", err)
|
||||
}
|
||||
|
||||
if err := db.AutoMigrate(
|
||||
&model.PaymentOrder{},
|
||||
&model.RentalOrder{},
|
||||
&model.RentalListing{},
|
||||
&model.GameAccount{},
|
||||
&model.User{},
|
||||
&model.ChatConversation{},
|
||||
&model.ChatParticipant{},
|
||||
&model.ChatMessage{},
|
||||
&model.Notification{},
|
||||
); err != nil {
|
||||
t.Helper()
|
||||
db := database.NewTestDB()
|
||||
if err := database.MigrateRentalTransactionTestSchema(db); err != nil {
|
||||
t.Fatalf("数据库迁移失败: %v", err)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user