package gui import ( "path/filepath" "testing" ) func TestRoleStoreCRUDAndSave(t *testing.T) { tmpDir := t.TempDir() path := filepath.Join(tmpDir, "roles.json") store := NewRoleStore(path) store.Set(RoleInfo{ UID: 1199668605121, RoleName: "白菜被拱了呀", AreaName: "微信", PlatName: "安卓", DisplayName: "白菜被拱了呀 [微信-安卓]", GameName: "和平精英", IsBound: true, }) if err := store.Save(); err != nil { t.Fatalf("save: %v", err) } // 重新 Load store2 := NewRoleStore(path) if err := store2.Load(); err != nil { t.Fatalf("load: %v", err) } info, ok := store2.Get(1199668605121) if !ok { t.Fatalf("expected role for 1199668605121") } if info.RoleName != "白菜被拱了呀" { t.Errorf("expected roleName 白菜被拱了呀, got %s", info.RoleName) } if info.DisplayName != "白菜被拱了呀 [微信-安卓]" { t.Errorf("expected displayName 白菜被拱了呀 [微信-安卓], got %s", info.DisplayName) } }