pagetop/tests/service.rs
Manuel Cillero cbee4c2cb8 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.
2025-07-03 20:33:52 +02:00

15 lines
543 B
Rust

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);
}