use skyzen::{
openapi::AppInfo,
routing::{CreateRouteNode, Route},
};
skyzen::__register_app_info!(
APP_INFO,
AppInfo {
name: "orders-service",
version: "4.2.0",
description: Some("Order placement and fulfilment"),
}
);
async fn health() -> &'static str {
"OK"
}
#[test]
fn a_document_is_titled_by_what_was_registered_not_by_an_argument() {
let spec = Route::new(("/health".at(health),))
.openapi()
.to_utoipa_spec();
assert_eq!(spec.info.title, "orders-service");
assert_eq!(spec.info.version, "4.2.0");
assert_eq!(
spec.info.description.as_deref(),
Some("Order placement and fulfilment")
);
}
#[test]
fn with_info_overrides_the_registration() {
let spec = Route::new(("/health".at(health),))
.openapi()
.with_info(AppInfo {
name: "Orders API",
version: "2",
description: None,
})
.to_utoipa_spec();
assert_eq!(spec.info.title, "Orders API");
assert_eq!(spec.info.version, "2");
assert_eq!(spec.info.description, None);
}