aboutsummaryrefslogtreecommitdiffstats
path: root/crates/configuration/src/server/http_svc.rs
diff options
context:
space:
mode:
authorrtkay123 <dev@kanjala.com>2025-08-21 17:59:13 +0200
committerGitHub <noreply@github.com>2025-08-21 17:59:13 +0200
commit06421ed5455285eb5d5eb90ea689fa73ad0f3010 (patch)
treee7a56bb6ae95d9f6f84664c94fc2efb3758f6539 /crates/configuration/src/server/http_svc.rs
parent441196248603a7c1aed66e4c0a4342aeb06dca8f (diff)
downloadwarden-06421ed5455285eb5d5eb90ea689fa73ad0f3010.tar.bz2
warden-06421ed5455285eb5d5eb90ea689fa73ad0f3010.zip
tests: cov (#13)
Diffstat (limited to 'crates/configuration/src/server/http_svc.rs')
-rw-r--r--crates/configuration/src/server/http_svc.rs44
1 files changed, 44 insertions, 0 deletions
diff --git a/crates/configuration/src/server/http_svc.rs b/crates/configuration/src/server/http_svc.rs
index 423d67d..2997e13 100644
--- a/crates/configuration/src/server/http_svc.rs
+++ b/crates/configuration/src/server/http_svc.rs
@@ -63,3 +63,47 @@ pub fn build_router(state: AppHandle) -> Router {
warden_middleware::apply(router)
}
+
+#[cfg(test)]
+mod tests {
+ use axum::{
+ body::Body,
+ http::{Request, StatusCode},
+ };
+ use sqlx::PgPool;
+ use tower::ServiceExt;
+ use warden_stack::cache::RedisManager;
+
+ use crate::{
+ server::http_svc::{build_router, routes::test_config},
+ state::{AppState, Services},
+ };
+
+ #[sqlx::test]
+ async fn health_check(pool: PgPool) {
+ let config = test_config();
+
+ let cache = RedisManager::new(&config.cache).await.unwrap();
+ let client = async_nats::connect(&config.nats.hosts[0]).await.unwrap();
+ let jetstream = async_nats::jetstream::new(client);
+
+ let state = AppState::create(
+ Services {
+ postgres: pool,
+ cache,
+ jetstream,
+ },
+ &test_config(),
+ )
+ .await
+ .unwrap();
+ let app = build_router(state);
+
+ let response = app
+ .oneshot(Request::builder().uri("/").body(Body::empty()).unwrap())
+ .await
+ .unwrap();
+
+ assert_eq!(response.status(), StatusCode::OK);
+ }
+}