31 lines
775 B
Rust
31 lines
775 B
Rust
use crate::k8s::get_wireguard_config;
|
|
|
|
#[rocket::get("/wireguard/config/<instance_id>")]
|
|
pub async fn get_node_wireguard(instance_id: String) -> Option<String> {
|
|
if let Ok(Some(token)) = get_wireguard_config(&instance_id).await {
|
|
Some(token)
|
|
} else {
|
|
None
|
|
}
|
|
}
|
|
|
|
#[cfg(test)]
|
|
mod test {
|
|
use super::*;
|
|
use crate::rocket;
|
|
use rocket::http::Status;
|
|
use rocket::local::blocking::Client;
|
|
use rocket::uri;
|
|
|
|
#[test]
|
|
fn test_get_node_wireguard_404() {
|
|
let client = Client::tracked(rocket()).unwrap();
|
|
let res = client
|
|
.get(uri!(get_node_wireguard(
|
|
instance_id = "i-0a1b2c3d4e5f6f7f8"
|
|
)))
|
|
.dispatch();
|
|
assert_eq!(res.status(), Status::NotFound);
|
|
}
|
|
}
|