feat: 完成Rust User API完整开发
Some checks failed
Deploy to Production / Run Tests (push) Failing after 16m35s
Deploy to Production / Security Scan (push) Has been skipped
Deploy to Production / Build Docker Image (push) Has been skipped
Deploy to Production / Deploy to Staging (push) Has been skipped
Deploy to Production / Deploy to Production (push) Has been skipped
Deploy to Production / Notify Results (push) Successful in 31s
Some checks failed
Deploy to Production / Run Tests (push) Failing after 16m35s
Deploy to Production / Security Scan (push) Has been skipped
Deploy to Production / Build Docker Image (push) Has been skipped
Deploy to Production / Deploy to Staging (push) Has been skipped
Deploy to Production / Deploy to Production (push) Has been skipped
Deploy to Production / Notify Results (push) Successful in 31s
✨ 新功能: - SQLite数据库集成和持久化存储 - 数据库迁移系统和版本管理 - API分页功能和高效查询 - 用户搜索和过滤机制 - 完整的RBAC角色权限系统 - 结构化日志记录和系统监控 - API限流和多层安全防护 - Docker容器化和生产部署配置 🔒 安全特性: - JWT认证和授权 - 限流和防暴力破解 - 安全头和CORS配置 - 输入验证和XSS防护 - 审计日志和安全监控 📊 监控和运维: - Prometheus指标收集 - 健康检查和系统监控 - 自动化备份和恢复 - 完整的运维文档和脚本 - CI/CD流水线配置 🚀 部署支持: - 多环境Docker配置 - 生产环境部署指南 - 性能优化和安全加固 - 故障排除和应急响应 - 自动化运维脚本 📚 文档完善: - API使用文档 - 部署检查清单 - 运维操作手册 - 性能和安全指南 - 故障排除指南
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
//! SQLite 数据库存储测试
|
||||
|
||||
use rust_user_api::{
|
||||
models::user::User,
|
||||
models::{user::User, role::UserRole},
|
||||
storage::{database::DatabaseUserStore, UserStore},
|
||||
utils::errors::ApiError,
|
||||
};
|
||||
@@ -23,6 +23,7 @@ fn create_test_user() -> User {
|
||||
username: "testuser".to_string(),
|
||||
email: "test@example.com".to_string(),
|
||||
password_hash: "hashed_password".to_string(),
|
||||
role: UserRole::User,
|
||||
created_at: Utc::now(),
|
||||
updated_at: Utc::now(),
|
||||
}
|
||||
@@ -101,6 +102,7 @@ async fn test_database_list_users() {
|
||||
username: "user1".to_string(),
|
||||
email: "user1@example.com".to_string(),
|
||||
password_hash: "hashed_password1".to_string(),
|
||||
role: UserRole::User,
|
||||
created_at: Utc::now(),
|
||||
updated_at: Utc::now(),
|
||||
};
|
||||
@@ -110,6 +112,7 @@ async fn test_database_list_users() {
|
||||
username: "user2".to_string(),
|
||||
email: "user2@example.com".to_string(),
|
||||
password_hash: "hashed_password2".to_string(),
|
||||
role: UserRole::User,
|
||||
created_at: Utc::now(),
|
||||
updated_at: Utc::now(),
|
||||
};
|
||||
@@ -192,6 +195,7 @@ async fn test_database_duplicate_username_constraint() {
|
||||
username: "duplicate_test".to_string(),
|
||||
email: "test1@example.com".to_string(),
|
||||
password_hash: "hashed_password1".to_string(),
|
||||
role: UserRole::User,
|
||||
created_at: Utc::now(),
|
||||
updated_at: Utc::now(),
|
||||
};
|
||||
@@ -201,6 +205,7 @@ async fn test_database_duplicate_username_constraint() {
|
||||
username: "duplicate_test".to_string(), // 相同用户名
|
||||
email: "test2@example.com".to_string(),
|
||||
password_hash: "hashed_password2".to_string(),
|
||||
role: UserRole::User,
|
||||
created_at: Utc::now(),
|
||||
updated_at: Utc::now(),
|
||||
};
|
||||
|
Reference in New Issue
Block a user