code: pushing tests to > 80% for initial satisfaction.
This commit is contained in:
parent
4ae38adc8e
commit
f6a2c892cd
@ -12,6 +12,10 @@ use minijinja_autoreload::AutoReloader;
|
|||||||
use serde::Serialize;
|
use serde::Serialize;
|
||||||
use std::{marker::PhantomData, path::Path, sync::Arc};
|
use std::{marker::PhantomData, path::Path, sync::Arc};
|
||||||
|
|
||||||
|
#[cfg(feature = "testing")]
|
||||||
|
const TEMPLATES_DIR: &str = "tests";
|
||||||
|
|
||||||
|
#[cfg(not(feature = "testing"))]
|
||||||
const TEMPLATES_DIR: &str = "assets/templates";
|
const TEMPLATES_DIR: &str = "assets/templates";
|
||||||
|
|
||||||
#[derive(Clone)]
|
#[derive(Clone)]
|
||||||
|
@ -2,21 +2,44 @@
|
|||||||
#[cfg(feature = "testing")]
|
#[cfg(feature = "testing")]
|
||||||
mod tests {
|
mod tests {
|
||||||
use axum::{routing::get, Router};
|
use axum::{routing::get, Router};
|
||||||
use loco_minijinja_engine::MinijinjaViewEngineConfigurableInitializer;
|
use loco_minijinja_engine::{
|
||||||
|
MinijinjaView, MinijinjaViewEngineConfigurableInitializer, MinijinjaViewEngineInitializer,
|
||||||
|
};
|
||||||
use loco_rs::app::Initializer;
|
use loco_rs::app::Initializer;
|
||||||
|
use loco_rs::controller::views::ViewRenderer;
|
||||||
use loco_rs::tests_cfg;
|
use loco_rs::tests_cfg;
|
||||||
|
use serde_json::Value;
|
||||||
|
|
||||||
#[tokio::test]
|
#[tokio::test]
|
||||||
async fn test_after_routes_success() {
|
async fn test_after_routes_configured() {
|
||||||
let router = Router::new().route("/", get(|| async { "Hello, World!" }));
|
let router = Router::new().route("/", get(|| async { "Hello, World!" }));
|
||||||
let ctx = tests_cfg::app::get_app_context().await;
|
let ctx = tests_cfg::app::get_app_context().await;
|
||||||
|
|
||||||
let std_initializer =
|
let initializer =
|
||||||
MinijinjaViewEngineConfigurableInitializer::new("tests".to_string(), None);
|
MinijinjaViewEngineConfigurableInitializer::new("tests".to_string(), None);
|
||||||
|
|
||||||
// Call the after_routes function
|
// Call the after_routes function
|
||||||
let result = std_initializer.after_routes(router, &ctx).await;
|
let result = initializer.after_routes(router, &ctx).await;
|
||||||
|
|
||||||
assert!(result.is_ok(), "result was NOT OK: {:?}", result);
|
assert!(result.is_ok(), "result was NOT OK: {:?}", result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[tokio::test]
|
||||||
|
async fn test_after_routes_std() {
|
||||||
|
let router = Router::new().route("/", get(|| async { "Hello, World!" }));
|
||||||
|
let ctx = tests_cfg::app::get_app_context().await;
|
||||||
|
|
||||||
|
let initializer = MinijinjaViewEngineInitializer;
|
||||||
|
let result = initializer.after_routes(router, &ctx).await;
|
||||||
|
|
||||||
|
assert!(result.is_ok(), "result was NOT OK: {:?}", result);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_rendering() {
|
||||||
|
let jinja: MinijinjaView = MinijinjaView::build().unwrap();
|
||||||
|
let result = jinja.render("test.html", Value::default());
|
||||||
|
assert!(result.is_ok(), "result was NOT OK: {:?}", result);
|
||||||
|
assert_eq!(result.unwrap(), "\r\nHello World!\r\n");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user