mirror of
https://github.com/NoFxAiOS/nofx.git
synced 2026-07-11 23:07:01 +08:00
Dev backtest (#1134)
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user