✨ Añade servidor web y primeras macros de PageTop
- Crea el crate raíz `pagetop` y configura el workspace con `helpers/pagetop-macros`. - Añade las macros #[pagetop::main] y #[pagetop::test] que envuelven Actix-web para crear aplicaciones y pruebas asíncronas sin depender explícitamente del framework. - Reexporta, mediante el módulo `service`, los tipos esenciales de Actix-web para gestionar servidores y servicios web. - Implementa `Application::{new, run, test}` para simplificar el arranque y la ejecución de tests. - Expone `pagetop::prelude` con las macros, `service` y `Application` para una API pública coherente. - Incorpora ejemplo `examples/app-basic.rs` que levanta un servidor web vacío con el código mínimo para hacerlo.
This commit is contained in:
parent
45e2882653
commit
cbee4c2cb8
13 changed files with 1818 additions and 1 deletions
15
tests/service.rs
Normal file
15
tests/service.rs
Normal file
|
@ -0,0 +1,15 @@
|
|||
use pagetop::prelude::*;
|
||||
|
||||
#[pagetop::test]
|
||||
async fn homepage_returns_404() {
|
||||
let app = service::test::init_service(Application::new().test()).await;
|
||||
|
||||
let req = service::test::TestRequest::get().uri("/").to_request();
|
||||
let resp = service::test::call_service(&app, req).await;
|
||||
|
||||
// Comprueba el acceso a la ruta de inicio.
|
||||
// assert_eq!(resp.status(), service::http::StatusCode::OK);
|
||||
|
||||
// Sin ruta de inicio se obtiene error 404, pero el test funciona.
|
||||
assert_eq!(resp.status(), service::http::StatusCode::NOT_FOUND);
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue