mirror of
https://github.com/Xevion/Pac-Man.git
synced 2025-12-06 05:15:49 -06:00
All API routes were moved under /api prefix as part of the unified deployment architecture. Updated test files to reflect this change: - basics.rs: Update root and auth/providers routes - health.rs: Update health endpoint routes - oauth.rs: Update all OAuth and auth callback routes, plus redirect locations - sessions.rs: Update profile and logout routes This fixes 9 failing tests that were expecting routes without the /api prefix.
27 lines
950 B
Rust
27 lines
950 B
Rust
mod common;
|
|
|
|
use pretty_assertions::assert_eq;
|
|
|
|
use crate::common::{test_context, TestContext};
|
|
|
|
/// Test health endpoint functionality with real database connectivity
|
|
#[tokio::test]
|
|
async fn test_health_endpoint() {
|
|
let TestContext { server, container, .. } = test_context().use_database(true).call().await;
|
|
|
|
// First, verify health endpoint works when database is healthy
|
|
let response = server.get("/api/health").await;
|
|
assert_eq!(response.status_code(), 200);
|
|
let health_json: serde_json::Value = response.json();
|
|
assert_eq!(health_json["ok"], true);
|
|
|
|
// Now kill the database container to simulate database failure
|
|
drop(container);
|
|
|
|
// Now verify health endpoint reports bad health
|
|
let response = server.get("/api/health?force").await;
|
|
assert_eq!(response.status_code(), 503); // SERVICE_UNAVAILABLE
|
|
let health_json: serde_json::Value = response.json();
|
|
assert_eq!(health_json["ok"], false);
|
|
}
|