refactor: streamline environment variable loading and improve logging

This commit is contained in:
MythEclipse
2025-07-31 15:07:18 +07:00
parent ee9d23e01b
commit 148cf3a5cd
19 changed files with 253 additions and 173 deletions
+12 -12
View File
@@ -72,7 +72,7 @@ mod auth_login_tests {
async fn test_successful_login_with_valid_credentials() {
let state = setup_test_environment().await;
let email = generate_unique_email("test_login_success");
let password = "TestPass123!";
let password = "password";
create_test_user_with_role(&state, &email, password, "User", true).await;
@@ -105,7 +105,7 @@ mod auth_login_tests {
let login_dto = AuthLoginRequestDto {
email: "invalid-email".to_string(),
password: "TestPass123!".to_string(),
password: "password".to_string(),
};
let response = AuthService::mutation_login(login_dto, &state).await;
@@ -124,7 +124,7 @@ mod auth_login_tests {
let login_dto = AuthLoginRequestDto {
email: "".to_string(),
password: "TestPass123!".to_string(),
password: "password".to_string(),
};
let response = AuthService::mutation_login(login_dto, &state).await;
@@ -160,7 +160,7 @@ mod auth_login_tests {
async fn test_login_with_wrong_password() {
let state = setup_test_environment().await;
let email = generate_unique_email("test_wrong_pass");
let correct_password = "TestPass123!";
let correct_password = "password";
create_test_user_with_role(&state, &email, correct_password, "User", true).await;
@@ -186,7 +186,7 @@ mod auth_login_tests {
let login_dto = AuthLoginRequestDto {
email: generate_unique_email("nonexistent"),
password: "TestPass123!".to_string(),
password: "password".to_string(),
};
let response = AuthService::mutation_login(login_dto, &state).await;
@@ -206,7 +206,7 @@ mod auth_login_tests {
async fn test_login_with_inactive_user() {
let state = setup_test_environment().await;
let email = generate_unique_email("test_inactive");
let password = "TestPass123!";
let password = "password";
create_test_user_with_role(&state, &email, password, "User", false).await;
@@ -233,7 +233,7 @@ mod auth_login_tests {
async fn test_successful_mentor_login() {
let state = setup_test_environment().await;
let email = generate_unique_email("test_mentor_login");
let password = "TestPass123!";
let password = "password";
create_test_user_with_role(&state, &email, password, "Mentor", true).await;
@@ -258,7 +258,7 @@ mod auth_login_tests {
async fn test_mentor_login_with_non_mentor_user() {
let state = setup_test_environment().await;
let email = generate_unique_email("test_user_not_mentor");
let password = "TestPass123!";
let password = "password";
create_test_user_with_role(&state, &email, password, "User", true).await;
@@ -285,7 +285,7 @@ mod auth_login_tests {
async fn test_mentor_login_with_inactive_mentor() {
let state = setup_test_environment().await;
let email = generate_unique_email("test_inactive_mentor");
let password = "TestPass123!";
let password = "password";
create_test_user_with_role(&state, &email, password, "Mentor", false).await;
@@ -312,7 +312,7 @@ mod auth_login_tests {
async fn test_login_creates_user_cache() {
let state = setup_test_environment().await;
let email = generate_unique_email("test_cache");
let password = "TestPass123!";
let password = "password";
create_test_user_with_role(&state, &email, password, "User", true).await;
@@ -337,7 +337,7 @@ mod auth_login_tests {
async fn test_login_with_special_characters_in_email() {
let state = setup_test_environment().await;
let email = generate_unique_email("test+special");
let password = "TestPass123!";
let password = "password";
create_test_user_with_role(&state, &email, password, "User", true).await;
@@ -356,7 +356,7 @@ mod auth_login_tests {
async fn test_login_with_case_sensitive_email() {
let state = setup_test_environment().await;
let email = generate_unique_email("test_case");
let password = "TestPass123!";
let password = "password";
create_test_user_with_role(&state, &email, password, "User", true).await;
+2 -12
View File
@@ -1,7 +1,7 @@
// Restore only the necessary imports to fix unresolved function errors
use crate::{get_iso_date, hash_password};
use imphnen_entities::AppState;
use imphnen_iam::{PermissionsEnum, UsersSchema};
use imphnen_libs::enviroment::load_env;
use serde::{Deserialize, Serialize};
use strum::IntoEnumIterator;
use surrealdb::engine::{any, local};
@@ -29,23 +29,15 @@ struct RoleSeedData {
}
pub async fn create_mock_app_state() -> AppState {
load_env();
let db_ws = any::connect("ws://127.00.1:8000/rpc").await.unwrap();
let db_mem = Surreal::new::<local::Mem>(()).await.unwrap();
let unique_id = Uuid::new_v4().to_string();
let ns = format!("test_ns_{unique_id}");
let db = format!("test_db_{unique_id}");
db_ws
.signin(Root {
username: "root",
@@ -54,11 +46,8 @@ pub async fn create_mock_app_state() -> AppState {
.await
.unwrap();
db_ws.use_ns(&ns).use_db(&db).await.unwrap();
AppState {
surrealdb_ws: db_ws,
surrealdb_mem: db_mem,
@@ -183,6 +172,7 @@ pub async fn seed_users_for_test(
}
pub async fn setup_all_test_environment() -> AppState {
debug!("Setting up all test environment in setup_all_test_environment()");
let app_state = create_mock_app_state().await;
app_state
.surrealdb_mem