Stable Test codecov Rust Docs Crate version Download Version License: MIT

Roa-router

The router module of roa. This module provides an endpoint RouteEndpoint and a context extension RouterParam.

Example

```rust use roarouter::{Router, RouterParam}; use roacore::App; use roacore::http::StatusCode; use roatcp::Listener; use async_std::task::spawn;

[tokio::test]

async fn gate() -> Result<(), Box> { let mut router = Router::<()>::new(); router .gatefn(|ctx, next| next) .get("/", |ctx| async move { Ok(()) }); let (addr, server) = App::new(()).gate(router.routes("/route")?).run()?; spawn(server); let resp = reqwest::get(&format!("http://{}/route", addr)).await?; asserteq!(StatusCode::OK, resp.status());

let resp = reqwest::get(&format!("http://{}/endpoint", addr)).await?;
assert_eq!(StatusCode::NOT_FOUND, resp.status());
Ok(())

} ```