完善测试建表并统一前端格式

This commit is contained in:
yml2213
2026-07-14 01:32:14 +08:00
parent 2efcede800
commit 2ca6fd9306
36 changed files with 714 additions and 478 deletions
+38
View File
@@ -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)
}