#![allow(non_snake_case, reason = "To enable test function name organisation")]
use super::*;
use axum::{
http::StatusCode,
response::IntoResponse as _,
};
use rubedo::{
http::{ResponseExt as _, UnpackedResponse, UnpackedResponseBody},
sugar::s,
};
use serde_json::json;
#[expect(clippy::unit_arg, reason = "Needed for the test")]
#[tokio::test]
async fn ping() {
let unpacked = get_ping().await.into_response().unpack().unwrap();
let crafted = UnpackedResponse::new(
StatusCode::OK,
vec![],
UnpackedResponseBody::default(),
);
assert_eq!(unpacked, crafted);
}
#[tokio::test]
async fn version() {
let unpacked = get_version().await.into_response().unpack().unwrap();
let crafted = UnpackedResponse::new(
StatusCode::OK,
vec![
(s!("content-type"), s!("application/json")),
],
UnpackedResponseBody::new(json!({
"version": env!("CARGO_PKG_VERSION"),
})),
);
assert_eq!(unpacked, crafted);
}