Dev backtest (#1134)

This commit is contained in:
Rick
2025-11-28 21:34:27 +08:00
committed by GitHub
parent 64a5734011
commit 7eebb4e218
39 changed files with 9293 additions and 125 deletions

View File

@@ -31,6 +31,8 @@ func TestUpdateExchange_EmptyValuesShouldNotOverwrite(t *testing.T) {
"",
"",
"",
"", // lighter_wallet_addr
"", // lighter_private_key
)
if err != nil {
t.Fatalf("初始化失败: %v", err)
@@ -63,6 +65,8 @@ func TestUpdateExchange_EmptyValuesShouldNotOverwrite(t *testing.T) {
"",
"",
"", // 空 aster_private_key - 不应该覆盖
"",
"",
)
if err != nil {
t.Fatalf("更新失败: %v", err)
@@ -112,6 +116,8 @@ func TestUpdateExchange_AsterEmptyValuesShouldNotOverwrite(t *testing.T) {
"0xAsterUser",
"0xAsterSigner",
initialAsterKey,
"",
"",
)
if err != nil {
t.Fatalf("初始化 Aster 失败: %v", err)
@@ -129,6 +135,8 @@ func TestUpdateExchange_AsterEmptyValuesShouldNotOverwrite(t *testing.T) {
"0xAsterUser",
"0xAsterSigner",
"", // 空 aster_private_key
"",
"",
)
if err != nil {
t.Fatalf("更新失败: %v", err)
@@ -164,6 +172,8 @@ func TestUpdateExchange_NonEmptyValuesShouldUpdate(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
t.Fatalf("初始化失败: %v", err)
@@ -184,6 +194,8 @@ func TestUpdateExchange_NonEmptyValuesShouldUpdate(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
t.Fatalf("更新失败: %v", err)
@@ -225,6 +237,8 @@ func TestUpdateExchange_PartialUpdateShouldWork(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
t.Fatalf("初始化失败: %v", err)
@@ -242,6 +256,8 @@ func TestUpdateExchange_PartialUpdateShouldWork(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
t.Fatalf("部分更新失败: %v", err)
@@ -304,6 +320,8 @@ func TestUpdateExchange_MultipleExchangeTypes(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
t.Fatalf("创建 %s 失败: %v", tc.exchangeID, err)
@@ -358,6 +376,8 @@ func TestUpdateExchange_MixedSensitiveFields(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
t.Fatalf("初始化失败: %v", err)
@@ -375,6 +395,8 @@ func TestUpdateExchange_MixedSensitiveFields(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
t.Fatalf("更新1失败: %v", err)
@@ -400,6 +422,8 @@ func TestUpdateExchange_MixedSensitiveFields(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
t.Fatalf("更新2失败: %v", err)
@@ -439,6 +463,8 @@ func TestUpdateExchange_OnlyNonSensitiveFields(t *testing.T) {
"0xUser1",
"0xSigner1",
"aster-private-key-1",
"",
"",
)
if err != nil {
t.Fatalf("初始化失败: %v", err)
@@ -456,6 +482,8 @@ func TestUpdateExchange_OnlyNonSensitiveFields(t *testing.T) {
"0xUser2",
"0xSigner2",
"",
"",
"",
)
if err != nil {
t.Fatalf("更新失败: %v", err)
@@ -507,6 +535,8 @@ func TestUpdateExchange_AllSensitiveFieldsUpdate(t *testing.T) {
"",
"",
"old-aster-key",
"",
"",
)
if err != nil {
t.Fatalf("初始化失败: %v", err)
@@ -524,6 +554,8 @@ func TestUpdateExchange_AllSensitiveFieldsUpdate(t *testing.T) {
"0xUser",
"0xSigner",
"new-aster-key",
"",
"",
)
if err != nil {
t.Fatalf("更新失败: %v", err)
@@ -556,7 +588,11 @@ func setupTestDB(t *testing.T) (*Database, func()) {
}
// 创建测试用户
testUsers := []string{"test-user-001", "test-user-002", "test-user-003", "test-user-004", "test-user-005", "test-user-006", "test-user-007", "test-user-008", "test-user-009"}
testUsers := []string{
"test-user-001", "test-user-002", "test-user-003", "test-user-004", "test-user-005",
"test-user-006", "test-user-007", "test-user-008", "test-user-009",
"test-user-persistence", "user1", "user2",
}
for _, userID := range testUsers {
user := &User{
ID: userID,
@@ -658,6 +694,15 @@ func TestDataPersistenceAcrossReopen(t *testing.T) {
}
db.SetCryptoService(cryptoService)
// 创建持久化测试用户,避免外键约束失败
_ = db.CreateUser(&User{
ID: userID,
Email: userID + "@test.com",
PasswordHash: "hash",
OTPSecret: "",
OTPVerified: true,
})
// 写入交易所配置
err = db.UpdateExchange(
userID,
@@ -670,6 +715,8 @@ func TestDataPersistenceAcrossReopen(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
t.Fatalf("写入数据失败: %v", err)
@@ -745,6 +792,8 @@ func TestConcurrentWritesWithWAL(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
errors <- err
@@ -769,6 +818,8 @@ func TestConcurrentWritesWithWAL(t *testing.T) {
"",
"",
"",
"",
"",
)
if err != nil {
errors <- err