Refactor tests to improve response parsing and validation

- Introduced a new common module with response helper functions to streamline response parsing across tests.
- Updated role controller tests to assert success messages in responses for create, update, and delete operations.
- Enhanced role service tests to validate response structures and ensure proper error handling.
- Modified team controller and service tests to check for success messages and validate response data formats.
- Improved user controller and service tests to include success message assertions and error handling for invalid inputs.
- Ensured all tests utilize the new response parsing functions for consistency and maintainability.
This commit is contained in:
MythEclipse
2025-10-05 16:00:46 +07:00
parent a32f54873b
commit 9cecc8fa05
25 changed files with 893 additions and 512 deletions
@@ -6,13 +6,12 @@ use crate::v1::mentors::mentors_dto::MentorRegisterResponseDto;
use ::axum::{
extract::{Extension, Json, Path, Query},
http::HeaderMap,
response::{IntoResponse, Response},
response::Response,
};
use imphnen_entities::MetaRequestDto;
use imphnen_libs::AppState;
use imphnen_iam::{PermissionsEnum, permissions_guard};
use imphnen_utils::extract_email;
use serde_json::json;
#[utoipa::path(
post,
@@ -236,14 +235,10 @@ pub async fn get_mentor_me(
let email = match extract_email(&headers) {
Some(email) => email,
None => {
return (
return imphnen_utils::common_response(
axum::http::StatusCode::UNAUTHORIZED,
Json(json!({
"error": "Unauthorized",
"message": "Token tidak valid"
})),
)
.into_response();
"Token tidak valid",
);
}
};
MentorsService::get_mentor_me(&app_state, &email).await
@@ -340,14 +335,10 @@ pub async fn get_mentor_status(
let email = match extract_email(&headers) {
Some(email) => email,
None => {
return (
return imphnen_utils::common_response(
axum::http::StatusCode::UNAUTHORIZED,
Json(json!({
"error": "Unauthorized",
"message": "Token tidak valid"
})),
)
.into_response();
"Token tidak valid",
);
}
};
MentorsService::get_mentor_status(&app_state, &email).await