Revisa el estado de los tests del entorno

This commit is contained in:
Manuel Cillero 2025-01-04 08:31:31 +01:00
parent 736e1be6ea
commit c6800e4387
13 changed files with 46 additions and 13 deletions

View file

@ -30,6 +30,7 @@ authors = ["Manuel Cillero <manuel@cillero.es>"]
[workspace.dependencies]
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
static-files = "0.2.4"
# Helpers

View file

@ -11,7 +11,7 @@
//!
//! Uso:
//!
//! ```rust
//! ```rust#ignore
//! use pagetop_hljs::config;
//!
//! assert_eq!(config::SETTINGS.hljs.theme, "zenburn");

View file

@ -11,7 +11,7 @@ use std::fmt;
/// Languages are represented by *PascalCase* enums within the code and are mapped to corresponding
/// [highlight.js](https://highlightjs.org/) language names.
///
/// ```rust
/// ```rust#ignore
/// use pagetop_hljs::HljsLang;
///
/// assert_eq!(HljsLang::CoffeeScript.to_string(), "coffeescript".to_string());

View file

@ -15,14 +15,14 @@
//!
//! Añade `pagetop-hljs` a tu archivo `Cargo.toml`:
//!
//! ```rust
//! ```rust#ignore
//! [dependencies]
//! pagetop-hljs = "<Version>"
//! ```
//!
//! Incluye `pagetop_hljs::HighlightJS` en las dependencias del paquete o aplicación que lo requiera:
//!
//! ```rust
//! ```rust#ignore
//! use pagetop::prelude::*;
//!
//! impl PackageTrait for MyPackage {
@ -44,12 +44,12 @@
//!
//! Y finalmente añade tus fragmentos de código con resaltado de sintaxis en páginas web:
//!
//! ```rust
//! ```rust#ignore
//! use pagetop_hljs::prelude::*;
//!
//! async fn hljs_sample(request: HttpRequest) -> ResultPage<Markup, ErrorPage> {
//! Page::new(request)
//! .with_component(Snippet::with(
//! .with_component(HljsSnippet::with(
//! HljsLang::Rust,
//! r###"
//! // This is the main function.

View file

@ -13,7 +13,7 @@ use std::fmt;
/// Themes are defined as *PascalCase* enums in the code and correspond to *kebab-case* string
/// identifiers.
///
/// ```rust
/// ```rust#ignore
/// use pagetop_hljs::HljsTheme;
///
/// assert_eq!(HljsTheme::AtelierPlateauLight.to_string(), "atelier-plateau-light".to_string());

View file

@ -10,7 +10,7 @@
//! The following example shows how the user migration file should be and using
//! the schema helpers to create the Db fields.
//!
//! ```rust
//! ```rust#ignore
//! use sea_orm_migration::{prelude::*, schema::*};
//!
//! #[derive(DeriveMigrationName)]

View file

@ -47,3 +47,6 @@ pagetop-macros.workspace = true
[build-dependencies]
pagetop-build.workspace = true
[dev-dependencies]
serde_json.workspace = true

View file

@ -175,7 +175,7 @@ macro_rules! hm {
///
/// # Ejemplo
///
/// ```
/// ```rust#ignore
/// // Concatena todos los fragmentos directamente.
/// let result = join_string!("Hello", " ", "World");
/// assert_eq!(result, "Hello World".to_string());
@ -206,7 +206,7 @@ macro_rules! join_string {
///
/// # Ejemplo
///
/// ```
/// ```rust#ignore
/// // Concatena los fragmentos no vacíos con un espacio como separador.
/// let result_with_separator = option_string!(["Hello", "", "World"]; " ");
/// assert_eq!(result_with_separator, Some("Hello World".to_string()));
@ -244,7 +244,7 @@ macro_rules! option_string {
///
/// # Ejemplo
///
/// ```
/// ```rust#ignore
/// let first = "Hello";
/// let separator = "-";
/// let second = "World";

View file

@ -0,0 +1 @@
mod unit;

View file

@ -0,0 +1,27 @@
use pagetop::prelude::*;
use serde_json;
#[pagetop::test]
async fn test_deserialize_absolute_units() {
let value: unit::Value = serde_json::from_str("\"50px\"").unwrap();
assert!(matches!(value, unit::Value::Px(50)));
let value: unit::Value = serde_json::from_str("\"10cm\"").unwrap();
assert!(matches!(value, unit::Value::Cm(10)));
}
#[pagetop::test]
async fn test_deserialize_relative_units() {
let value: unit::Value = serde_json::from_str("\"1.5em\"").unwrap();
assert!(matches!(value, unit::Value::RelEm(1.5)));
let value: unit::Value = serde_json::from_str("\"100%\"").unwrap();
assert!(matches!(value, unit::Value::RelPct(100.0)));
}
#[pagetop::test]
async fn test_invalid_format() {
let result: Result<unit::Value, _> = serde_json::from_str("\"invalid\"");
assert!(result.is_err());
}

View file

@ -1,2 +1,5 @@
#[cfg(test)]
mod server;
#[cfg(test)]
mod html;

View file

@ -9,6 +9,4 @@ async fn health_check_works() {
let app = service::test::init_service(Application::prepare(&HealthCheck).test()).await;
let req = service::test::TestRequest::get().uri("/").to_request();
let _resp = service::test::call_service(&app, req).await;
// assert_eq!("OK", "OK");
}