aboutsummaryrefslogtreecommitdiffstats
path: root/src/server/routes/mod.rs
diff options
context:
space:
mode:
authorrtkay123 <dev@kanjala.com>2026-02-02 13:05:49 +0200
committerrtkay123 <dev@kanjala.com>2026-02-02 13:05:49 +0200
commite06094f23ca861ea5ae4864d11fa8ce8b7d7aa2c (patch)
tree27bbff5fd21711f99aaf579a76b1a0aca7869003 /src/server/routes/mod.rs
parent78f61ccdf66572d7432b5b627994038479103653 (diff)
downloadsellershut-e06094f23ca861ea5ae4864d11fa8ce8b7d7aa2c.tar.bz2
sellershut-e06094f23ca861ea5ae4864d11fa8ce8b7d7aa2c.zip
feat: oauth route
Diffstat (limited to 'src/server/routes/mod.rs')
-rw-r--r--src/server/routes/mod.rs49
1 files changed, 49 insertions, 0 deletions
diff --git a/src/server/routes/mod.rs b/src/server/routes/mod.rs
new file mode 100644
index 0000000..edd6fdf
--- /dev/null
+++ b/src/server/routes/mod.rs
@@ -0,0 +1,49 @@
+#[cfg(feature = "oauth")]
+pub mod auth;
+
+pub(super) const HEALTH: &str = "HEALTH";
+
+#[utoipa::path(
+ method(get),
+ path = "/",
+ tag = HEALTH,
+ responses(
+ (status = OK, description = "Checks if the server is running", body = str, content_type = "text/plain")
+ )
+)]
+pub async fn health_check() -> impl axum::response::IntoResponse {
+ let name = env!("CARGO_PKG_NAME");
+ let version = env!("CARGO_PKG_VERSION");
+
+ format!("{name} v{version} is live")
+}
+
+#[cfg(test)]
+mod tests {
+ use crate::{
+ config::Config,
+ server::{self, bootstrap::TestDriver, state::AppState},
+ };
+
+ use axum::{
+ body::Body,
+ http::{Request, StatusCode},
+ };
+ use tower::ServiceExt;
+
+ #[tokio::test]
+ async fn health_check() {
+ let config = Config::default();
+ let driver = TestDriver::default();
+ let state = AppState::new(&config, driver).await.unwrap();
+
+ let app = server::router(&config, state).await.unwrap();
+
+ let response = app
+ .oneshot(Request::builder().uri("/").body(Body::empty()).unwrap())
+ .await
+ .unwrap();
+
+ assert_eq!(response.status(), StatusCode::OK);
+ }
+}