code: test framework and coverage for development
This commit is contained in:
25
tests/test_features.rs
Normal file
25
tests/test_features.rs
Normal file
@@ -0,0 +1,25 @@
|
||||
use loco_minijinja_engine::{
|
||||
MinijinjaViewEngineConfigurableInitializer, MinijinjaViewEngineInitializer,
|
||||
};
|
||||
use loco_rs::app::Initializer;
|
||||
|
||||
fn basic_features() {
|
||||
let std_initializer = MinijinjaViewEngineInitializer;
|
||||
assert_eq!(std_initializer.name(), "minijinja");
|
||||
|
||||
let cfg_initializer =
|
||||
MinijinjaViewEngineConfigurableInitializer::new("tests".to_string(), None);
|
||||
assert_eq!(cfg_initializer.name(), "minijinja");
|
||||
}
|
||||
|
||||
#[cfg(not(feature = "autoreloader"))]
|
||||
#[test]
|
||||
fn test_without_feature_autoreloader() {
|
||||
basic_features();
|
||||
}
|
||||
|
||||
#[cfg(feature = "autoreloader")]
|
||||
#[test]
|
||||
fn test_with_feature_autoreloader() {
|
||||
basic_features();
|
||||
}
|
||||
22
tests/test_route_init.rs
Normal file
22
tests/test_route_init.rs
Normal file
@@ -0,0 +1,22 @@
|
||||
#[cfg(test)]
|
||||
#[cfg(feature = "testing")]
|
||||
mod tests {
|
||||
use axum::{routing::get, Router};
|
||||
use loco_minijinja_engine::MinijinjaViewEngineConfigurableInitializer;
|
||||
use loco_rs::app::Initializer;
|
||||
use loco_rs::tests_cfg;
|
||||
|
||||
#[tokio::test]
|
||||
async fn test_after_routes_success() {
|
||||
let router = Router::new().route("/", get(|| async { "Hello, World!" }));
|
||||
let ctx = tests_cfg::app::get_app_context().await;
|
||||
|
||||
let std_initializer =
|
||||
MinijinjaViewEngineConfigurableInitializer::new("tests".to_string(), None);
|
||||
|
||||
// Call the after_routes function
|
||||
let result = std_initializer.after_routes(router, &ctx).await;
|
||||
|
||||
assert!(result.is_ok(), "result was NOT OK: {:?}", result);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user